Базовая обработка форм
Массив $_REQUEST
Массив PHP $_Request предоставляет ценную помощь при сборе передаваемой на сервер информации формы, помещая ее в структуру для удобной обработки сценарием. Массив $_Request перехватывает строку имен/значений, разбирает строку на имена и соответствующие значения и помещает эту информацию в ассоциативный массив, индексированный соответствующими именами полей формы. PHP предоставляет также массивы $_POST и $_GET, однако массив $_REQUEST часто является лучшим выбором, особенно в ситуациях, когда данные отправляются с удаленного сайта и неизвестно, какой метод используется — GET или POST.
Когда значения данных оказываются в массиве $_Request, их можно легко использовать по их именам, применяя следующий синтаксис:
$_Request['FName']="John" $_Request['LName']="Smith" $_Request['City']="Atlanta" $_Request['State']="Georgia" $_Request['Message']="I like PHP" $_Request['submit']="Submit Data"
где именем является имя, связанное с полем в форме. Поэтому ссылка $_Request['Account'] указывает на значение, введенное в поле User Name ; а ссылка $_Request['SubmitButton'] — на значение, связанное с кнопкой Submit. С точки зрения программирования $_Request['name'] работает как переменная программы, которая указывает на значение, хранящееся в этой переменной.
Итерации по массиву $_Request
С помощью цикла foreach можно выполнять итерации на массиве $_Request. Это предоставляет хороший способ отладки сценариев, которые обрабатывают информацию формы, а также возможность просмотреть имена полей и присланные значения, чтобы проверить, что из формы была прислана правильная информация.
<?php foreach($_REQUEST as $key => $value) { echo $key; echo ": " .$value; echo "<br/>"; } ?>
На каждом шаге цикла значение текущего элемента $_REQUEST присваивается переменной $value, а указатель массива сдвигается на единицу. Текущий индекс массива присваивается на каждом шаге переменной $key.
Этот сценарий выводит имя каждого из полей ( Item ) формы вместе со связанным значением, при этом каждая пара выводится на отдельной строке. При использовании значений показанного выше примера вывод этого сценария будет следующим:
FName: John LName: Smith City: Atlanta State: Georgia Message: I like PHP submit: Submit Data
Просматривая этот вывод, можно убедиться, что ожидаемые данные были присланы на страницу welcome.php перед реальной обработкой правильно.