Отображение данных формы
В предыдущей статьях уже рассматривался вопрос отображения данных, введенных в отдельные элементы управления. Для целей отладки web-приложения полезен скрипт, который может отобразить все введенные в форму данные. При разработке сложной формы можно легко допустить ошибку в названии элемента управления или присвоить двум элементам идентичное название, и такой скрипт поможет выявить подобные ошибки. В примере приведена форма, содержащая несколько различных элементов управления:
<HTML> <HEAD> <TITLE>Пример сложной формы</TITLE> </HEAD> <BODY> <CENTER> <H1>Пример сложной формы</H1> <FORM METHOD="POST" ACTION="phpformdata.php"> Введите Ваше имя <INPUT NAME="Name" TYPE="TEXT"> <BR><BR> Выберите любимые фрукты: <SELECT NAME="Food[]" MULTIPLE> <OPTION>апельсин</OPTION> <OPTION>груша</OPTION> <OPTION>персик</OPTION> <OPTION>яблоко</OPTION> </SELECT> <BR> <BR> <INPUT TYPE="SUBMIT" VALUE="OK"> </FORM> </CENTER> </BODY> </HTML>
Внешний вид формы изображен на рисунке:
Для отображения всех данных, введенных в форме, используется цикл foreach по всем элементам массива $_REQUEST. Если какой-либо элемент массива сам является массивом (это может случиться в случае использования списков с множественным выбором), используется вложеный цикл foreach. Скрипт-обработчик формы приведен в примере, результат его выполнения — на рисунке:
<HTML> <HEAD> <TITLE>Отображение всех данных формы</TITLE> </HEAD> <BODY> <CENTER> <H1>Отображение всех данных формы</H1> В форму были введены данные: <BR> <?php foreach ($_REQUEST as $key => $value) { if (is_array ($value)) { foreach ($value as $item) { echo $key, " => ", $item, "<BR>"; } } else { echo $key, " => ", $value,"<BR>"; } } ?> </CENTER> </BODY> </HTML>
Автор: Стивен Хольцнер. Переводчик: С. Банников