Дмитрий Кудрец - Основы языка HTML. Часть вторая
© Дмитрий Кудрец, 2019
ISBN 978-5-4496-2167-2 (т. 2)
ISBN 978-5-4496-2166-5
Создано в интеллектуальной издательской системе Ridero
Формы
Форма – это инструмент, с помощью которого HTML-документ может отправить информацию по заданному адресу. Формы применяются для опроса посетителей, покупки чего-либо, отправки электронной почты.
Принцип работы форм следующий: пользователь заполняет форму, а после нажатия определенной кнопки форма берет данные из заполненных полей и отправляет их в назначенное место.
Формы размещаются между тегами .
HTML-документ может содержать в себе несколько форм, но они не должны находиться одна внутри другой.
Тег может содержать следующие атрибуты:
ACTION – обязательный атрибут. Определяет, где находится обработчик формы. Он должен содержать URL скрипта, который будет обрабатывать полученные данные. Очень часто скрипты хранятся в директориях под названием BIN/ или CGI-BIN/ на сервере.
Примером элемента, задающего границы формы, может быть следующий код:
<FORMMETHOD=«POST» ACTION="HTTP://WWW.F.NET/CGI-BIN/S.PL">
FORM>
METHOD – определяет, каким образом данные из формы будут переданы обработчику. Допустимые значения: METHOD=POST и METHOD=GET. По умолчанию предполагается METHOD=GET.
Метод GET означает, что данные формы будут добавлены в конец URL назначения. В большинстве случаев это накладывает серьезные ограничения на размеры данных (чаще всего не более 100 символов). Впрочем, если форма состоит из одного-двух элементов и важно передавать данные с высокой скоростью, то используется именно GET.
Например: <FORMMETHOD=«GET» ACTION="/CGI-BIN/SEARCH»>
Если же вы собираетесь поместить большое количество данных в большую форму, метод GET использовать не стоит.
Для таких случаев существует POST, который посылает данные отдельно и не имеет практического ограничения на их размер. Открывающий тег элемента при использовании POST выглядит так: <FORM METHOD=«POST» ACTION="/CGI-BIN/SURVEY.PL»>
ENCTYPE – определяет, каким образом данные из формы будут закодированы для передачи обработчику. Его включают в элемент только в том случае, если вы просите пользователя прислать на сервер какой-либо файл. В этом случае следует указать следующее значение: ENCTYPE=«MULTIPART/FORM-DATA».
Атрибуты NAME и ID можно применять для идентификации форм при использовании скриптов или таблиц стилей. Атрибут ID является совместимым со стандартом XHTML, a NAME – это лишь дань старым традициям. Надежнее всего использовать оба атрибута:
NAME=«MYFORM» ID=«MYFORM»
Для внесения информации пользователем в форму используется элемент .
Каждый элемент включает атрибут NAME=имя, определяющий имя данного поля (идентификатор поля).
Для ввода данных существуют следующие типы элементов:
TYPE=«TEXT» – определяет окно для ввода строки текста. Может содержать дополнительные атрибуты SIZE=«число» (ширина окна ввода в символах) и MAXLENGTH=«число» (максимально допустимая длина строки в символах).
Определяет окно шириной 20 символов для ввода текста. По умолчанию в окне находится текст «Введите текст», который пользователь может изменить.
TYPE=«PASSWORD» – определяет окно для ввода пароля. Абсолютно аналогичен типу TEXT, только вместо символов вводимого текста показывает на экране звездочки (*):
Определяет окно шириной 20 символов для ввода пароля. Максимально допустимая длина пароля – 10 символов.
TYPE=«RADIO» – определяет переключатели. Может содержать дополнительный атрибут CHECKED (показывает, что кнопка отмечена). В группе переключателей с одинаковыми именами может быть только один помеченный переключатель.
Определяет группу из трех переключателей, подписанных YES, NO и POSSIBLE. Первоначально помечен первый переключатель. Если пользователь не отметит другую кнопку, обработчику будет передана переменная QUESTION со значением YES. Если пользователь отметит другую кнопку, обработчику будет передана переменная