Например, есть урл: http://mysite.ru/my-auto.html Так вот, нужно чтобы в условии, если есть слово auto в урле, вывелось там чего-то...
Спустя 2 часа, 3 минуты, 28 секунд (3.09.2011 - 21:20) johniek_comp написал(а):
http://php.su/functions/?parse-url
<?
preg_match_all('/href="my-auto.html/',$html,$matches);
var_dump($matches);
?>
Спустя 14 часов, 34 минуты, 10 секунд (4.09.2011 - 11:55) Sergen написал(а):
Цитата (johniek_comp @ 3.09.2011 - 18:20) |
http://php.su/functions/?parse-url<? |
В общем-то работает, выглядит достаточно просто, но...Посмотрел, больно мудренная функция, думал будет с использованием if, так нужна проверка не по одному слову.Не совсем понял, зачем здесь массивы?
Спустя 2 часа, 51 минута, 1 секунда (4.09.2011 - 14:46) Evilsoul написал(а):
так есть, все просто :)
$url = 'http://mysite.ru/my-auto.html';
if(strstr($url, 'auto'))
echo 'YES';
else
echo 'NO';
Спустя 3 дня, 5 часов, 27 минут, 45 секунд (7.09.2011 - 20:13) Sergen написал(а):
так есть, все просто :)
Спасибо, но не то. Есть условия, чтобы проверить наличие определенных слов в урле. Этих урлов может с десятка два, слов столько же или больше.
$url = 'http://mysite.ru/my-auto.html';
if(strstr($url, 'auto'))
echo 'YES';
else
echo 'NO';
Спасибо, но не то. Есть условия, чтобы проверить наличие определенных слов в урле. Этих урлов может с десятка два, слов столько же или больше.
Спустя 43 минуты, 47 секунд (7.09.2011 - 20:57) Evilsoul написал(а):
function words($data)
{
$url = 'http://mysite.ru/my-auto.html';
if(strstr($url, $data))
return 'YES';
else
return 'NO';
}
$words = array('auto', 'my', 'site', 'html', 'not me'); // и так далее
$arr = array_map('words', $words);
echo 'Example #1: <hr>';
print_r($arr);
$url = 'http://mysite.ru/my-auto.html';
echo '<br /><br />Example #2: <br /><hr>';
foreach($words as $val)
{
if(strstr($url, $val))
echo $val.' -> YES<br />';
else
echo $val.' -> NO<br />';
}
exit;
Спустя 2 часа, 34 минуты, 37 секунд (7.09.2011 - 23:32) Sergen написал(а):
Evilsoul спасибо большое, но это не то...У вас проверка урла по куче слов (я его не проверял на работоспособность, но не вижу некоторых переменных, но не это главное)
Я наверное неверно изложил вопрос. Есть модуль, в зависимости от страницы он должен выхватывать чего-там из базы, и чего-то там показывать. Вот я и думал проверять урлы по определенным словам. Был бы динамический, наверное можно сделать через GET, но вот как выхватить человекопонятный и сделать по нему проверку?
Я наверное неверно изложил вопрос. Есть модуль, в зависимости от страницы он должен выхватывать чего-там из базы, и чего-то там показывать. Вот я и думал проверять урлы по определенным словам. Был бы динамический, наверное можно сделать через GET, но вот как выхватить человекопонятный и сделать по нему проверку?
Спустя 16 минут, 22 секунды (7.09.2011 - 23:48) Игорь_Vasinsky написал(а):
а не проще написать роутер на switch - case и работать по нужному GET?
Спустя 20 часов, 13 минут, 12 секунд (8.09.2011 - 20:01) Sergen написал(а):
Цитата |
а не проще написать роутер на switch - case и работать по нужному GET? |
Дык, я представляю как это сделать и с помощью switch - case и с помощью GET, вот только я это представляю для динамического урла, а вот как для человеко понятного ни как...
Спустя 9 минут, 31 секунда (8.09.2011 - 20:11) alex12060 написал(а):
Sergen
Опиши подробней, что надо то?
Опиши подробней, что надо то?
Цитата |
если есть слово auto в урле, вывелось там чего-то... |
х)
Это не описание)
Желательно, прикрепить сюда .htaccess файл, и объяснить, что и как и где у тебя хранится.
Спустя 4 минуты, 11 секунд (8.09.2011 - 20:15) Игорь_Vasinsky написал(а):
Цитата |
для динамического урла, а вот как для человеко понятного ни как... |
А кто те сказал что при ЧПУ нет GET???
впиши код в странице с чпу
echo "<pre>";
print_r($_GET);
echo "</pre>";
Спустя 5 часов, 3 минуты, 23 секунды (9.09.2011 - 01:18) Sergen написал(а):
Цитата |
echo "<pre>"; print_r($_GET); echo "</pre>"; |
Да понятно- вывелся массив, ключи, значения....как и положено для динамичного урла, который "заменил" ЧПУшный...
Просто я думал, может есть какая-нибудь функция, которая "как-бы считывала" человекопонятный урл и ну там можно было дальше устроить проверку его по словам.
Судя по всему, путь только через динамический, через GET...Конечно это блин, усложняет все...
Спустя 8 минут, 30 секунд (9.09.2011 - 01:27) Игорь_Vasinsky написал(а):
Цитата |
удя по всему, путь только через динамический, через GET...Конечно это блин, усложняет все... |
наоборот - это всё упрощает :D
либо ты не понял ко чём я.
Почитай про роутер на ирбисе.
Пускай у тя даже 10 GET запросов, для все можно отстроить роутер, можно даже вложенность в switch - case использовать.
Цитата |
Просто я думал, может есть какая-нибудь функция |
parse_url()
Спустя 20 часов, 7 минут, 18 секунд (9.09.2011 - 21:34) Sergen написал(а):
Цитата |
parse_url() |
Игорь, я посмотрел эту функцию, но она опять же не выхватывает урл как это делает get. Остаются только одно, делать через get и с помощью switch или if. А для меня действительно сложнее. Сложнее в том смысле, что рутины масса, нужно будет определенный ключ-значение проверять на соответствие определенной странице
Спустя 12 минут, 4 секунды (9.09.2011 - 21:46) Sergen написал(а):
Цитата |
Sergen Опиши подробней, что надо то? |
В джумле есть один компонент, при помощи которого можно вывести например модуль по определенному слову в урле. Т.е. встречается среди 300-х урлов слово mandarin 5 раз (my-site/mandarin.html; my-site/big-mandarin.html и т.д.), значит этот модуль и появится на сайте 5 раз. Нечто подобное мне и нужно было