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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Какая-то мистика

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: то-ли лыжи не едут, то ли я...
Haron
Отправлено: 12 Июня, 2010 - 18:25:27
Post Id



Частый гость


Покинул форум
Сообщений всего: 197
Дата рег-ции: Июнь 2010  
Откуда: Оттуда


Помог: 5 раз(а)




Имеется вот такой вот код:

PHP:
скопировать код в буфер обмена
  1. $_email = $_POST["idemail"];
  2. $_idclm = $_POST["idclmessage"];
  3. $_metatags = $_POST["idmetatags"];
  4.  
  5.         if (isset($_email) && isset($_idclm) && isset($_metatags)) {
  6.         setparam ($_email,"EMAIL_ADDRESS",$tbl_config);
  7.         setparam ($_metatags,"META_TAGS",$tbl_config);
  8.         settpl ("close",$_idclm);
  9.         } elseif (!isset($_email)) {
  10.         echo "<p id=\"nostate\">ОШИБКА: Не заполнено поле \"Электронный адрес\"</p>";
  11.         } elseif (!isset($_idclm)) {
  12.         echo "<p id=\"nostate\">ОШИБКА: Не заполнено поле \"Сообщение\"</p>";  
  13.         } elseif (!isset($_metatags)) {
  14.         echo "<p id=\"nostate\">ОШИБКА: Не заполнено поле \"Ключевые метатеги\"</p>";
  15. }


Он не работает. Вернее, работает... Но даже если одной из контролируемых переменных не существует - всё равно выполняется вот этот участок -

PHP:
скопировать код в буфер обмена
  1. if (isset($_email) && isset($_idclm) && isset($_metatags)) {
  2.         setparam ($_email,"EMAIL_ADDRESS",$tbl_config);
  3.         setparam ($_metatags,"META_TAGS",$tbl_config);
  4.         settpl ("close",$_idclm);
  5.         }


В чём может быть замес? Может PHP глючит? (register_globals - отключен, версия php 5.1.6)

(Отредактировано автором: 12 Июня, 2010 - 18:27:08)



-----
И чё?
 
 Top
duk
Отправлено: 12 Июня, 2010 - 19:26:53
Post Id



Частый гость


Покинул форум
Сообщений всего: 208
Дата рег-ции: Февр. 2010  
Откуда: Москва


Помог: 3 раз(а)




Как же они могут не существовать, если ты им присваиваешь значения в первых трех строчках? К моменту, когда ты проверяешь они всегда есть...
Проверяй иссет $_POST["idemail"] и так далее....
 
 Top
Мелкий Супермодератор
Отправлено: 12 Июня, 2010 - 22:22:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Haron пишет:
Но даже если одной из контролируемых переменных не существует - всё равно выполняется вот этот участок

Переменная, содержащая пустую строку, тоже переменная. Проверяйте на empty


-----
PostgreSQL DBA
 
 Top
Haron
Отправлено: 12 Июня, 2010 - 23:16:08
Post Id



Частый гость


Покинул форум
Сообщений всего: 197
Дата рег-ции: Июнь 2010  
Откуда: Оттуда


Помог: 5 раз(а)




Проблему решил, спасибо Улыбка


-----
И чё?
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB