Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проверка правильности ссылки
 
 автор: Sfinks   (09.02.2007 в 12:31)   письмо автору
 
 

Здпавствуйте!

Возникла необходимость проверки правильности реферера, причем вместе со всем GET-запросом, если таковой имеется. Т.е. как должно выглядеть рег.выр., которое полностью примет любую корректную ссылку, но ничего лишнего?

Вернее вот такую вешь:
<?php
  $ref 
"http://www.google.com/search/test.ru/script.php?client=opera&rls=ru&q=gjbcr+dczrjq+dczxbys+%7B%5D+%D0%BF%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2%D1%81%D1%8F%D0%BA%D0%BE%D0%B9+%D0%B2%D1%81%D1%8F%D1%87%D0%B8%D0%BD%D1%8B&sourceid=opera&ie=&oe=utf-8";
  
$pattern "|http://([a-z\d-_]*\.)*[a-z]{2,5}(/[a-z\d-_\.]*)*[/a-z\d-_]{1}(\?[a-z\d_]{1,}=[a-z\d_\+\%-]*(&[a-z\d_]{1,}=[a-z\d_\+\%-]*)*)?|i";
  
$ref preg_match($pattern,$ref,$out);
?>
я уже написал, поэтому вопрос наверно можно перефразировать так:

Какие символы кроме a-z, 0-9, _, +, - и % могут встречаться в корректном GET-запросе? =)

   
 
 автор: Sfinks   (09.02.2007 в 12:37)   письмо автору
 
   для: Sfinks   (09.02.2007 в 12:31)
 

Даже вот так вот:
$pattern = "|http://([a-z\d-_]*\.)*[a-z]{2,5}(/[a-z\d-_\.]*)*[/a-z\d-_]{1}(\?[a-z]{1}[a-z\d_]*=[a-z\d_\+\%-]*(&[a-z]{1}[a-z\d_]*=[a-z\d_\+\%-]*)*)?|i";
будет точнее, т.к. имя переменной должно начинаться с латинской буквы.

   
 
 автор: cheops   (09.02.2007 в 13:07)   письмо автору
 
   для: Sfinks   (09.02.2007 в 12:31)
 

Точка, прямой и обратный слеши, запятая

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования