PHP парсинг URL - PullRequest
       6

PHP парсинг URL

0 голосов
/ 28 августа 2010

Хорошо, я пытаюсь получить данные из базы данных для извлечения в соответствии с URL.

У меня есть база данных, которая содержит данные для некоторых объявлений для отдельных веб-сайтов клиентов.Сайты находятся в отдельных каталогах на моем сайте.(т. е. www.domain.com/website1/index.html, www.domain.com/website2/index.html, www.domain.com/website3/index.html и т. д.) В базе данных у меня есть столбецу каждого клиента есть «имя для подачи» (так называемое имя каталога - website1, website2, website3 и т. д.).Я хочу попробовать отобразить только те строки в базе данных, где filingName = website1 для домена "www.domain.com/website1/index.html".Надеюсь, это имеет смысл.Я в основном пытаюсь выяснить, как соединить точки между одной страницей и извлекать только записи о конкретных клиентах.Есть мысли ??

Спасибо!

Ответы [ 3 ]

1 голос
/ 28 августа 2010

В зависимости от того, насколько велик ваш набор данных, может быть «дешевле» предварительно обработать URL-адреса и сохранить отдельные компоненты, которым вы хотите соответствовать. например создайте дополнительные поля для host / dir / querystring и сохраните их по отдельности вместо монолитного абсолютного URL. Это было бы безопаснее, чем пытаться сопоставлять подстроки, особенно если подстрока, которую вы сопоставляете, может быть частью нескольких разных URL-адресов (abc является частью abc.com и abctv.com).

0 голосов
/ 25 февраля 2015

Лучше всего будет сохранить эти идентификаторы в базе данных самостоятельно (например, 1 = веб-сайт 1, 2 = веб-сайт 2) и соответствующим образом назвать каталоги. Затем в файле .htaccess измените URL-адрес, чтобы ваша переменная $_GET представляла собой имя каталога, замените его соответствующим именем в вашей базе данных. Сделайте это с помощью правила RewriteRule. Это самый абсолютный способ добиться этого при сохранении той же структуры URL.

edit: упс, не понял, сколько лет этой теме.

0 голосов
/ 28 августа 2010

Используйте в своем запросе оператор like:

SELECT * FROM `sites` WHERE `url` LIKE "%/website1/%";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...