LastChaos
20.05.2013 - 19:40
Всем привет, хочу сделать на сайте возможность добавлять сайты в БД, и хочу чтобы добавлялся только сам домен, а лишнее удалялось. Например:
Человек вводит это:
http://www.my-site.com/qwerty123
А записывается в БД так:
my-site.com
Как это сделать с помощью PHP ? Заранее спасибо.
Игорь_Vasinsky
20.05.2013 - 20:27
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
20.05.2013 - 20:50
Попробовал так:
parse_url(http:
Выводится:
..my-site.com.
как избавиться от лишних точек?
Игорь_Vasinsky
20.05.2013 - 21:07
Цитата |
Попробовал так: 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
20.05.2013 - 21:31
Мне это говорить каждому пользователю, который будет добавлять свой сайт в БД?
Игорь_Vasinsky
20.05.2013 - 21:39
ахаха. а валидацию для кого придумали?
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
20.05.2013 - 21:52
Не понимаю как этой функцией пользоваться... Выводит только:
bool(false)
LastChaos
20.05.2013 - 22:02
Все, спасибо, придумал способ порядочно отсортировать URL вводимый пользователями.
Игорь_Vasinsky
20.05.2013 - 22:04
покажешь?
_____________
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
21.05.2013 - 17:44
<?php
preg_match('@^(?:http://)?([^/]+)@i',
"http://www.php.net/index.html", $matches);
$host = $matches[1];
preg_match('/[^.]+\.[^.]+$/', $host, $matches);
echo "доменное имя: {$matches[0]}\n";
?>
Если доменное имя не выводится, извещаем об ошибке, и все.
Игорь_Vasinsky
21.05.2013 - 18:13
костылеобразное решение
_____________
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
21.05.2013 - 18:27
Ну предложите что-нибудь получше, только за
Игорь_Vasinsky
21.05.2013 - 18:32
я уже предложил)
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
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.