#5. 1 php Создание web-форм
Primary tabs
В этой главе описывается работа с различными элементами управления HTML — полями ввода, выключателями, переключателями, списками и т.п. Элементы управления превращают статическую страничку в интерактивную, содержимым которой можно управлять с их помощью. После того как пользователь ввел необходимые данные в соответствующие поля, они могут быть обработаны соответствующим скриптом, и сформирован ответ в виде HTML-страницы. Перечень элементов управления, которые рассматриваются в этой главе, приведен в таблице.
Элемент управления | Тег | Описание |
Выключатель (chekbox) | <INPUT TYPE = CHEKBOX> | Выключатель. Подходит для ввода логических переменных |
Кнопка (button) | <BUTTON> | Кнопка с произвольным внешним видом |
Кнопка-изображение (image map) | <INPUT TYPE = IMAGE> | Графическое изображение, на котором выделены области различной формы (прямоугольники, овалы, многоугольники) для гиперссылок на другие страницы |
Многострочный текст | <TEXTAREA> | Поле, предназначенное для ввода нескольких строчек текста |
Отправка | <INPUT TYPE = SUBMIT> | Кнопка, предназначенная для завершения ввода данных и отправки их на web-сервер |
Пароль | <INPUT TYPE = PASSWORD> | Текстовое поле для ввода пароля. При вводе символы не отображаются на экране, заменяясь звездочками |
Переключатель (radiobutton) | <INPUT TYPE = RADIO> | Переключатель, предназначенный для выбора одного из нескольких вариантов |
Скрытое поле | <INPUT TYPE = HIDDEN> | Предназначен для хранения текста, который не виден на экране, но доступен при обработке текста |
Сброк | <INPUT TYPE = RESET> | Кнопка, предназначенная для очистки всех полей формы |
Список | <SELECT>, <OPTION>, <OPTGROUP> | Многострочный список, предназначенный для выбора одного или нескольких вариантов |
Текстовое поле | <INPUT TYPE = TEXT> | Поле, предназначенное для ввода однострочного текста или других данных |
Файл | <INPUT TYPE = FILE> | Файл для загрузки на сервер |
Создание web-формы
Элементы управления располагаются на web-форме. Для её создания используется HTML-тег <FORM>
. Он имеет следующие атрибуты:
ACTION
. Атрибут задает URL скрипта, который будет обрабатывать данные, введенные в форме. Если атрибут не задан, то по умолчанию обработчиком будет назначен текущий скрипт или документ.METHOD
. Определяет способ передачи данных скрипту-обработчику. Если используется методGET
(используется по умолчанию), то все поля, описанные в форме, передаются в строке URL в следующем виде:URL?name=value&name=value
. При использовании методаPOST
поля формы кодируются таким же образом, но передаются через скрытые переменные, не используя строку URL. МетодPOST
обычно используется при передаче большого объема данных или если необходимо скрыть от пользователя передаваемый набор полей.TARGET
. Задает имя фрейма, в котором будут отображен результат выполнения обработчика формы. Например, требуется обработать данные, вводимые пользователем на странице phpreader.html, при помощи скрипта phpreader.php, расположенного в том же каталоге. В данном случае атрибутуACTION
присваивается значение"phpreader.php"
(если бы скрипт-обработчик находится в другом каталоге или даже на другом сайте, то следовало бы указать относительный или абсолютный путь к нему, например,httр://www.orioner.ru/рhp/рhpreader.php
).
Пример. Создание web-формы
<HTML> <HEAD> <TITLE> Пример HTML-формы </TITLE> </HEAD> <BODY> <H1> Пример HTML-формы </H1> <FORM METHOD="POST" ACTION="phpreader.php"> <INPUT TYPE="SUBMIT" VALUE="OK"> </FORM> </BODY> </HTML>
Тег
<INPUT TYPE= "SUBMIT" VALUE="OK">
предназначен для отправки данных при нажатии на кнопку . Надпись на кнопке задаётся атрибутом
VALUE
и может быть произвольной, например:
<INPUT TYPE ="SUBMIT" VALUE="Зарегистрироваться">
Обычно рядом с кнопкой «Отправить» располагается кнопка «Сброс» для удаления всех данных, введенных в форму (или для установки их в значения по умолчанию). Ниже приведен пример такой кнопки (как и в предыдущем случае, надписи на кнопках могут быть произвольными):
<FORM METHOD="POST" ACTION="phpreader.php"> <INPUT TYPE ="SUBMIT" VALUE="OK"> <INPUT TYPE ="RESET" VALUE="Стереть"> </FORM>
Каким же образом обратиться к данным, переданным из формы скрипту? Если используется метод POST
, для этого используется массив $_POST
, как показано в следующем разделе. Для метода GET
используется массив $_GET
. Оба этих массива являются суперглобальными, что означает, что они доступны в любой функции без необходимости применения оператора global
. Еще один суперглобальный массив $_REQUEST
содержит объединение данных из $_GET
и $_POST
и может использоваться в тех случаях, когда скрипт может вызываться различными способами.
Замечание
Суперглобальные массивы $_GET , $_P0ST , $_REQUEST появились, начиная с PHP 4.1.0. До этой версии вместо $_GET и $_P0ST использовались глобальные массивы $HTTP_GET_VARS и $HTTP_POST_VARS , которые внутри функций требуют обязательного объявления при помощи оператора glоbal . Начиная с РНР 6.0, эти массивы перестали поддерживаться. |
- Log in to post comments
- 377 reads