[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Удаление лишнего текста
LastChaos
Всем привет, хочу сделать на сайте возможность добавлять сайты в БД, и хочу чтобы добавлялся только сам домен, а лишнее удалялось. Например:
Человек вводит это:
http://www.my-site.com/qwerty123

А записывается в БД так:
my-site.com

Как это сделать с помощью PHP ? Заранее спасибо.
Игорь_Vasinsky
parse_url()

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
LastChaos
Попробовал так:
parse_url(http://..my-site.com./bred, PHP_URL_HOST);

Выводится:
..my-site.com.

как избавиться от лишних точек?
Игорь_Vasinsky
Цитата
Попробовал так:
parse_url(http://..my-site.com./bred, PHP_URL_HOST);


наверно убрать эти 2 точки в исходной строке? не? как думаете?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
LastChaos
Мне это говорить каждому пользователю, который будет добавлять свой сайт в БД?
Игорь_Vasinsky
Цитата
Мне это говорить

ахаха. а валидацию для кого придумали? http://php.net/manual/ru/function.filter-var.php

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
LastChaos
Не понимаю как этой функцией пользоваться... Выводит только:
bool(false)
LastChaos
Все, спасибо, придумал способ порядочно отсортировать URL вводимый пользователями. smile.gif
Игорь_Vasinsky
покажешь?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
LastChaos
<?php
// Извлекаем имя хоста из URL
preg_match('@^(?:http://)?([^/]+)@i',
"http://www.php.net/index.html", $matches);
$host = $matches[1];

// извлекаем две последние части имени хоста
preg_match('/[^.]+\.[^.]+$/', $host, $matches);
echo "доменное имя: {$matches[0]}\n";
?>

Если доменное имя не выводится, извещаем об ошибке, и все.
Игорь_Vasinsky
костылеобразное решение

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
LastChaos
Ну предложите что-нибудь получше, только за
Игорь_Vasinsky
я уже предложил)
1. проверит на валидность введённый урл
2. вытащить нужную часть из него

ты сделал регулярками, а для этого есть штатные функции

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.