Может я что не правильно делаю.
у меня на винде стоит денвер скрипт работает отлично
т.е принимает параметр и фильтрует что ввел пользователь
if (isset($_GET['text'])) $text=($_GET['text']); else $text=""; //получаю данные скриптом
if(preg_match("/[^(w)|(a-z)|(A-Z)|(0-9)|(а-ю)|(А-Ю)s)]/",$text)) : //обрабатываю
echo "Ипользуйте русские и латинские буквы";
exit;
else:
endif;
т.е если пользователь ввел любой символ короме букв то загрузка страници прекращается.
Данная конструкция работает ОТЛИЧНО под виндой.
Перенеся ее на linux месного провайдера данная конструкция просто не работает(т.е пропускает любые символы и вставляет их в запрос sql в качестве параметра для поиска),
провайдер порекомендовал ее(конструкцию) заменить на $text=($_GET['text']);
что я и сделал.
В чем моя ошибка скажите пожалуйста, буду очень признателен.
setlocale31.03.06 11:55 Автор: paganoid Статус: Member
В какой кодировке сохранен скрипт? KOI8r а=С1 ю=C0; в результате диапазон a-ю == . По поводу скобок вокруг $_GET - только лол...30.03.06 18:14 Автор: kstati <Евгений Борисов> Статус: Elderman
> Может я что не правильно делаю. > у меня на винде стоит денвер скрипт работает отлично > т.е принимает параметр и фильтрует что ввел пользователь > if (isset($_GET['text'])) $text=($_GET['text']); else > $text=""; //получаю данные скриптом
Вот здесь вставь
echo $text;
И глянь принимается ли твой параметр вообще
> if >(preg_match("/[^(w)|(a-z)|(A-Z)|(0-9)|(а-ю)|(А-Ю)s)]/",$t
> ext)) : //обрабатываю > echo "Ипользуйте русские и латинские буквы"; > exit; > else: > endif;
А че это за конструкция такая? if (условие): операторы else: операторы endif;
Я всегда думал, что в пхп как в сях: if(условие) {операторы} else {операторы}
Если это че-то в новых ПХП... То может как раз в этом и дело?