Если данные в полях формы введены правильно, появляется сообщение о том, что в одном или нескольких полях содержатся некорректные данные. Var_dump($formats) выводит следующую информацию: "array(1) { ["Submit"]=> string(3) "bad" }". Помогите, пожалуйста, разобраться. test26.php| Код | <?php include ("info.inc"); if (!isset($_POST['Submit'])) { include ("addressForm.inc"); } else { foreach ($_POST as $field => $value) { if (empty($_POST[$field])) { if ($field != "midName") { $blanks[$field] = "blank"; } } else { $value = trim($value); if ($field != "zipcode") { if (!ereg("^[А-Яа-яA-Za-z0-9' .-]{1,65}$", $value)) { $formats[$field] = "bad"; } } elseif($field == "zipcode") { if(!ereg("^[0-9]{5}(\-[0-9]{4})?", $value)) { $formats[$field] = "bad"; } } } } if (@sizeof ($blanks)>0 or @sizeof ($formats)>0) { if (@sizeof ($blanks)>0) { echo "<b>Вы не заполнили одно или несколько обязательных полей. Необходимо заполнить следующие поля:</b><br>"; foreach ($blanks as $field => $value) { echo " {$labels[$field]}<br>"; } } if (@sizeof($formats)>0) { echo "<b>В одном или нескольких полях содержатся некорректные данные. Исправьте информацию в следующих полях:</b><br>"; foreach ($formats as $field => $value) { echo " {$labels[$field]}<br>"; } } echo "<hr>"; // var_dump($formats); include ("addressForm.inc"); } else { echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <head> <meta http-equiv='Content-Type' content='text/html; charset=utf-8' /> <title>Имя и адрес</title> </head> <body>\n"; foreach ($_POST as $field => $value) { if ($field != "Submit") { echo "{$labels[$field]} $value <br>\n"; } } echo "</body></html>"; } } ?>
|
addressForm.inc| Код | <?php echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <meta http-equiv='Content-Type' content='text/html; charset=utf-8' /> <head> <title>Адрес покупателя</title> </head> <body>"; echo "<p align='center'> <form action='test26.php' method='POST'> <table width='95%' border='0' cellspacing='0' cellpadding='2'>\n"; foreach ($labels as $field => $value) { if (isset ($_POST[$field])) { $value = $_POST[$field]; } else { $value = ""; } echo "<tr><td align='right'>{$labels[$field]}</br></td><td><input type='text' name='$field' size='65' maxlengh='65' value='$value'></td></tr>"; } echo "</table> <div align='center'><p><input type='Submit' name='Submit' value='Отправить данные'></p></div></form>"; ?> </body> </html>
|
info.inc| Код | <?php $labels = array ("firstName" => "Имя:", "midName" => "Второе имя:", "lastName" => "Фамилия:", "street" => "Улица:", "city" => "Город:", "state" => "Штат:", "zipcode" => "Почтовый индекс:"); ?>
|
|