Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Почему выполняется цикл foreah тогда, когда не надо?
 
 автор: FiX   (02.10.2005 в 19:06)   письмо автору
 
 

Вот код:
if (isset($error)) {
ShowForm();
print "<tr><td bgcolor=ffffff colspan=2 height=1></td></tr><tr><td colspan=2><center><b>&#206;&#248;&#232;&#225;&#234;&#224;!</b></center>";
foreach ($error as $line):
print "<li>$line;";
endforeach;
print "</td></tr>"; }

else {
SendCode(); }

По идее если поля заполнены правильно, должна выводиться функция SendCode(). Но она не выполняется, даже если все заполнено правильно!
При этом выводится ошибка "Warning: Invalid argument supplied for foreach() in z:\home\work-nk.xost.ru\www\person\register.php on line 121".
Зачем? Если все правльно, то зачем выполнять foreach, ведь переменной $error нет... помогите, пожалуйста...

   
 
 автор: napTu3aH   (02.10.2005 в 19:17)   письмо автору
 
   для: FiX   (02.10.2005 в 19:06)
 

после функции foreach уберите двоеточие

foreach ($error as $line)

   
 
 автор: FiX   (03.10.2005 в 00:09)   письмо автору
 
   для: napTu3aH   (02.10.2005 в 19:17)
 

Да нет же, это не помогает... По идее, после того, как правильно заполнишь все поля, начинается процесс регистрации, т.е. выполняется функция SendCode(). А она по каким-то причинам не выполняется...

   
 
 автор: Akira   (03.10.2005 в 02:28)   письмо автору
 
   для: FiX   (02.10.2005 в 19:06)
 

Дело в том, что не передаетсья массив в функцию foreach.
Проверьте print_r($error) выведет ли он массив, может он пустой?
И лучше использовать такой вид:

<?
foreach ($array as $var) {
             echo 
$var;
}
?>

Так более читабельно.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования