Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: проверить параметры
Форумы портала PHP.SU » PHP » Регулярные выражения » проверить параметры

Страниц (1): [1]
 

1. broshurkaplus - 11 Февраля, 2012 - 09:43:07 - перейти к сообщению
здравствуйте
чтото не получается проверить параметры
есть два поля в форме , отправляем их
проверяю регуляркой на наличие тока рус буквы пробел и тире,
поля могут быть заполнены оба, а могут только одно из них.

не нашел ничего кроме как так

PHP:
скопировать код в буфер обмена
  1. $oba=trim($_POST['teg1']).trim($_POST['teg2']);
  2. if(!preg_match("/^[а-яА-Я -]+$/", $oba)) {exit ("Извините, но Вы ввели недопустимые символы");}


работает но не всегда
например один раз отправляю
аааа- аааа --
- авав- вав
срабатывает, а другой раз нет
в чем может быть дело, или как по правильному произвести проверку?
2. LIME - 11 Февраля, 2012 - 09:51:58 - перейти к сообщению
3. broshurkaplus - 11 Февраля, 2012 - 10:29:52 - перейти к сообщению
мне кажется что смылс тот же?
но не всегда работает.потестил
если ввести
ааа -
-ааа
те тире именно так или два --,то не работает, понимаю что таких слов нету, но юзер всякий бывает.как бы чтоб работало, или лучше не заморачиваться?
да и страница utf8
4. LIME - 11 Февраля, 2012 - 10:31:38 - перейти к сообщению
5. broshurkaplus - 11 Февраля, 2012 - 11:01:02 - перейти к сообщению
да ничего не понимаю через раз работает!
в чем может быть дело?
(Добавление)
всем спасибо помойму я разобрался
нашел что для многобайтовых кодировок в рег выр с кириллицей нужно использовать модификатор u, так же добавил i. и для передачи, если гет то второй параметр вставить в ф urldecode
может кому пригодится

и вот



протестил, работает

 

Powered by ExBB FM 1.0 RC1