|
|
|
| попробовал написать рег.выражение для проверки массива, правильно ли введены данные в адресной строке и если нет, то прервать выполнение скрипта и перевести на другую страницу с предупреждением.
оформил как функцию.
вот что получилось
<?php
function regfun($arr){
foreach($arr as $k => $v){
if(!preg_match("#^read(main|contact|contest)+?$|^[a-z_]+[0-9]{1,4}$#i",$k.$v)){
echo "соответствий не найдено<br>";
echo "<html><head><meta http-equiv='refresh' content='0; url=warning.php'></head></html>";
exit();
}
}
return $arr;
}
?>
|
просьба к знающим людям указать на ошибки, если таковые есть. я проверял на локальном, вроде всё работает.
принцип, по какому идёт проверка.
при заходе на сайт, пользовалель попадает на index.php, для того, что бы перемещаться по закладкам в адресе передаю дополнительные параметры.
read обязательный параметр, в зависимости от значения, пользователь попадает на соответствующую закладку, таких закладок 3 шт, main - главная страница, contact - контакты, contest - конкурсы.
когда переходит на закладку "конкурсы", выводится список конкурсов, что бы перейти к конкретному конкурсу добавляется параметр id конкурса.
может прописать явно id, а не представлять как диапозон символов и как мне прописать _, что бы отсутствие этого символа воспринималось как не соответствие выражению?
и ещё такой вопрос.
надо ли делать дополнительные проверки, что бы повысить безопасность скрипта?
на этих страницах сайта не вводятся ни какие данные и ни куда не передаются, информация на этоих страницах только для просмотра. | |
|
|
|
|
|
|
|
для: Slo_Nik
(19.03.2009 в 12:50)
| | при заходе на сайт, пользовалель попадает на index.php, для того, что бы перемещаться по закладкам в адресе передаю дополнительные параметры.
read обязательный параметр, в зависимости от значения, пользователь попадает на соответствующую закладку, таких закладок 3 шт, main - главная страница, contact - контакты, contest - конкурсы.
Очень странно, зачем здесь РВ?
Наверно вам поможет конструкция switch.
А на счет обработки передаваемых данных, то на форуме куча постов где можно почитать. | |
|
|
|
|
|
|
|
для: AcidTrash
(19.03.2009 в 22:51)
| | Вы меня не поняли.
Я и так использую переключатель swith,РВ я проверяю данные которые передаются в адресной строке для swith.
Насчёт обработки я спросил потому, что меня интересовало достаточно такой проверки при тех условиях которые я описал или нет? | |
|
|
|
|
|
|
|
для: Slo_Nik
(20.03.2009 в 01:21)
| | и ни кто не может посмотреть подсказать? | |
|
|
|