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. resko1987 - 06 Апреля, 2010 - 19:26:52 - перейти к сообщению
Код не проходит
PHP:
скопировать код в буфер обмена
  1.  
  2. $user = $_POST['username'];
  3. if(!preg_match("/^[a-zA-Z0-9]+$/", $user)) {
  4.     echo "Имя пользователя задано в неправильном формате";
  5. } else {
  6.     echo "Имя пользователя задано в правильном формате";
  7. }
  8.  

Ввожу лантинские символы выводит:
Имя пользователя задано в неправильном формате

Влияет ли кодировка charset=windows-1251

Подскажите что может быть и как с этим бороться! Однако
2. movEAX - 06 Апреля, 2010 - 20:33:58 - перейти к сообщению
А ты уверен что у тебя POST а не GET ?
3. markus4 - 06 Апреля, 2010 - 23:08:07 - перейти к сообщению
всё нормально работает.
Изменил немного, ограничил количество - от 1 до 16 символов.
PHP:
скопировать код в буфер обмена
  1. $user = $_POST['username'];
  2. if(!preg_match("/^[a-zA-Z0-9]{1,16}/", $user))
  3. echo "Имя пользователя задано в неправильном формате<br>";
  4. else    
  5. echo "Имя пользователя задано в правильном формате<br>";
  6. echo $user;
4. resko1987 - 07 Апреля, 2010 - 00:20:35 - перейти к сообщению
Ну не работает и все тут, спрошу у хостинга может у них с настройками что не так.
5. markus4 - 07 Апреля, 2010 - 01:16:53 - перейти к сообщению
После первой строки
$user = $_POST['username'];
поставь
echo $user; // проверить что там вообще...
Проверь ещё форму. Поле ввода точно username?
6. resko1987 - 07 Апреля, 2010 - 10:55:34 - перейти к сообщению
Проблема устранена.
Хостинг затупил, ситуацию мне объяснили так:
Я отправлял запрос методами GET и POST.
При Register Globals ON регулярные выражения не работают.
Установили Register Globals OFF и все заработало.
7. Champion - 07 Апреля, 2010 - 10:58:45 - перейти к сообщению
resko1987 пишет:
При Register Globals ON регулярные выражения не работают.
Ого! Прям так и сказали?
8. resko1987 - 07 Апреля, 2010 - 11:59:36 - перейти к сообщению
Champion пишет:
Ого! Прям так и сказали?

Ну да.
Не знаю насколько это верно.
Известно только опытным программистам, а я с этим столкнулся впервые.
9. movEAX - 07 Апреля, 2010 - 12:21:52 - перейти к сообщению
resko1987 пишет:
При Register Globals ON регулярные выражения не работают.

Представить страшно кто там в техподдержке сидит...
10. biperch - 07 Апреля, 2010 - 12:25:32 - перейти к сообщению
resko1987 пишет:
Я отправлял запрос методами GET и POST.

а как это? одновременно и POST и GET?
может все таки ты методом GET отправлял?
(Добавление)
Техподдержка жесть как она есть
11. DeepVarvar - 07 Апреля, 2010 - 14:29:26 - перейти к сообщению
Было дело я как-то давно тему поднимал, что мол файлы картинок в папке при ее парсинге у меня на локалке парсились в алфавитном порядке а после запуска у хостера парсились как попало... Так вот хостер даже версию пхп переставлял.... Не помогало ))))))))) Вопрос решил Eugen, намекнув на различие файловых систем, и я дописал в ф-цию всего одну строчку array_multisort(); ..... Так все и заработало... А хостер был в шоке от своей невнимательности и проделанной лишней работы, видимо намотал на ус.

 

Powered by ExBB FM 1.0 RC1