[X]-tenDead MoPo[3]
gazzzeta@inbox.ru
Тэг FORM и всё что с ним связано
Данная статья рассчитана, как пособие для Script kiddie'сов и администраторов.
Автор пользовался описаниями стандартов CERN и своим опытом.
Итак, тэг FORM. С помощью него действует принцип Common Gateway Interface и
другие технологии "Клиент - Сервер" для протокола HTTP. Этот тэг выглядит, как:
<FORM ACTION="адрес" METHOD="метод">подтэги</FORM>.
Тэгов FORM может быть несколько в одном HTML-документе, и адреса Сервера для
разных тэгов FORM могут быть различны.
Атрибуты FORM:
- ACTION - адрес Сервера, куда будет послана Информация Клиента. Если ACTION в тэге
FORM не указан, используется текущий документ. Этого не знают многие администраторы, а ведь
могут сжимать свои HTML-файлы.
- METHOD - метод, которым будет послана Информация Клиента Серверу. Режимы METHOD:
GET - вся Информация Клиента прибавляется к URL скрипта Сервера. Т.е.,
если скрипт http://www.x.ru/cgi-bin/x.cgi, то Информация передастся Серверу, как
http://www.x.ru/cgi-bin/x.cgi?имя1=значение1&имя2=значение2.
HEAD - тоже, что и GET, но Сервер не возвращает Клиенту Информацию.
POST - Информация передается как тело запроса и не видна Клиенту.
PUT - Клиент запрашивает Сервер о сохранении Информации как адрес в
ACTION. Если ресурс уже имеется, происходит модификация.
DELETE - тоже, что и PUT, только не создание, а удаление адреса в
ACTION.
LINK - устанавливает связь между существующим ресурсом и адресом в
ACTION.
UNLINK - тоже, что и LINK, но не создание связи, а ее удаление.
- ENCTYPE - кодировка, в которой Клиент посылает Информацию Серверу.
Информация Клиента находится между <FORM> и </FORM>
в тэгах:
INPUT - ввод Информации самим Клиентом. Атрибуты:
- TYPE один из:
HIDDEN - Клиент не может изменить эту Информацию, но она передается
Серверу. Клиент не видит через броузер это поле.
IMAGE - картинка, замена SUBMIT, об этом позже. Формат тэга идиентичен
обычному IMG.
TEXT - Клиент вводит текст ручками.
PASSWORD - тоже, что и TEXT, но введенная Информация показывается
звездочками и не сохраняется в кэше.
CHECKBOX - квадратик, в который можно поставить галочку (как на
выборах).
RADIO - несколько кнопок, из которых можно выбрать одну. NAME должен
быть одинаковым, если кнопка должна быть "одна из многих".
SUBMIT - кнопка-подтверждение Клиентом отправки Информации Серверу.
RESET - кнопка-подтверждение Клиентом на удаление всей введенной им
Информации.
- NAME - имя каждой категории Информации. Клиент через броузер не видит.
- VALUE - значение для TEXT и PASSWORD, которое будет по умолчанию.
- CHECKED - указывает, будет CHECKBOX и RADIO включено по умолчанию. Значение не
требуется.
- SIZE - размер поля ввода для TEXT и PASSWORD. Значение может быть как
SIZE="ширина" или SIZE="ширина,высота". Понятие "высота" устарело. Теперь для этих
целей лучше использовать TEXTAREA.
- MAXLENGTH - максимальное количество вводимых символов для TEXT и PASSWORD.
SELECT - это закрывающийся тэг. Его вид:
<SELECT NAME="имя1">
<OPTION>значение1
<OPTION>значение2
</SELECT>
или
<SELECT NAME="имя1">
<OPTION VALUE="значение1">1</OPTION>
<OPTION VALUE="значение2">2</OPTION>
</SELECT>
Атрибуты SELECT:
- NAME - имя, как и у INPUT.
- SIZE - если равен 1 или не указан SELECT будет как меню Motif. Если равен больше 1,
то SELECT будет как окно выбора.
- MULTIPLE - если есть, задает, что выбрать можно несколько значений. Для Motif не
работает, значение не нужно.
Атрибуты OPTION:
- SELECTED - тоже, что и CHECKED для CHECKBOX и RADIO. Значение не нужно.
- VALUE - тоже, что и у INPUT.
TEXTAREA - ввод многостроковой Информации. Атрибуты:
- NAME - имя, как и у INPUT и SELECT.
- ROWS - высота в поле ввода.
- COLS - ширина в поле ввода.
TEXTAREA - закрывающийся тэг, выглядит как:
<TEXTAREA NAME="имя1" ROWS="высота" COLS="ширина"></TEXTAREA>. Если должен
быть быть текст по умолчанию:
<TEXTAREA NAME="имя1" ROWS="высота" COLS="ширина">значение1</TEXTAREA>.
Вот и весь тэг FORM, с помощью которого мы делаем покупки в электронных
магазинах, общаемся в чатах, ищем информацию в поисковиках и т.д.
|