и самое главное особенностях при
Ну а теперь немного о синтаксисе элементов форм ,их описании и самое главное особенностях при обработке
CGI-скриптом.
Итак немного экскурс в
HTML:
FORM
<FORM action="http://......cgi" method="GET"|"POST" enctype="encodingType" name="formName" target="windowName" onSubmit="Handler"> </FORM>
Атрибуты:
action
как раз и задает тот
URL,который будет и обрабатывать форму, если он опущен,то текущий
URL документа(а он-то может быть сгенерирован нашим скриптом).
method
задает метод
GET или
POST
enctype
обычно не задается,для форм он
application/x-www-form-urlencoded -по умолчанию, и поддерживается всеми
CGI скриптами.Но если вы уж очень хотите чтобы браузер послал вам данные в другом формате (например
text/plain) то можете указать этот тип кодировки,только потом не жалуйтесь,что ваш скрипт не может разделить поля,или вообще начинает глючить когда пользователь ввел какой-то спецсимвол.
name
Задается для
JavaScript,чтоб обращатся к форме по имени,а не по номеру. Для
CGI не играет ни какой роли,так как внутреннее для браузера.
target
Может Определять в какой фрейм отправить полученую информацию.Имеет значение во фреймосодержащих документах.Прозрачен для
CGI обработки данных.
onSubmit
Определяет
JavaScript -обработчик активизации формы.Применяется для проверки
JavaScript'ом правильности заполнения.Опять таки прозрачен для
CGI.
Пример типичной формы:
<FORM action="http://www.uic.nnov.ru/~paaa/cgi-bin/test.cgi" method="POST"> .........Поля формы......... </FORM>
Форма может содержать
элементы.Элементы имеют имена,которые используются для кодирования пар
имя=значение.Некоторые Элементы не передаются
CGI,а используются
JavaScript
для управления,например кнопки.Некоторые поля передаются только в тех случаях, когда в них что-то выбрано,например списки и переключатели.Остальные поля передаются всегда, даже когда они пустые.
Например:
<FORM action="http://www.doom/cgi-bin/test.cgi"> Your Name:<INPUT name="Name"><BR> E-Mail:<INPUT name="Email"><BR> Are you doomer:<INPUT type="checkbox" name="doomer" value="Yes"> <INPUT type="submit" value="Send Form!"> </FORM>
Содержание Назад Вперед