Приложение 10.
Знакомство с формами

    Здесь мы дадим краткую характеристику формам.

    Элементы форм, такие как области редактирования текста, поля ввода, меню, позволяют посетителям Web-сайта вводить информацию и выбирать требуемые опции.

    При добавлении элемента формы обычно указывают его имя. Имена служат только для различения элементов форм - на Web-странице в окне браузера они не отображаются. Когда пользователь вводит данные либо выбирает требуемую опцию, соответствующему элементу формы присваивается определенное значение. После щелчка на кнопке Submit имя элемента и его значение отсылаются на Web-сервер или направляются абоненту электронной почты по указанному адресу. Например, если пользователь ввел в поле редактирования с именем FirstName значение ВАСЯ, в итоговом наборе результатов заполнения формы появится строка FirstName=ВАСЯ.

Проектирование форм

    Формы, которые вы создаете, должны быть привлекательны внешне и просты в использовании. Чтобы форма помещалась в границах одного экрана, она должна содержать не более 40 текстовых строк по вертикали и 75 символов по горизонтали.

    Добавляя в форму новые элементы, группируйте их по назначению и сопровождайте надписями, внятно поясняющими, какого рода информация должна быть введена пользователем. Если речь идет о полях редактирования или областях ввода многострочного текста, убедитесь, что размеры элементов соответствуют объему информации, которая должна вводиться. Например, поле редактирования, предназначенное для хранения номера телефона, должно обеспечивать возможность набора строки текста длиной не менее 10-15 символов. Может оказаться полезным отобразить рядом текст примера, который поможет неискушенному пользователю правильно ввести всю требуемую информацию.

    В некоторых формах применяются инструкции, написанные на языке JavaScript (VBScript), которые предписывают браузеру выполнить те или иные действия в зависимости от содержания введенных пользователем данных либо служат для проверки взаимной корректности таких данных.

Обработка информации

    Когда Web-сервер получает информацию о заполненной форме, он запускает на выполнение одну или несколько программ, которые носят название сценариев CGI. Используемый в конкретном случае сценарий CGI определяет правила обработки данных. Например, сценарий CGI способен отослать результаты заполнения формы по электронной почте, сохранить их в виде внешнего файла либо внести в базу данных, размещенную на Web-сервере. Большинство CGI-сценариев создается на языке программирования Perl.

    Когда Web-браузер отсылает на сервер данные, введенные пользователем, он осуществляет кодирование информации, добавляя вспомогательные символы, которые на самом деле человеком не набирались. Например, каждый символ пробела в этом случае приобретает вид символа плюс (+), а пары имен элементов и присвоенных им значений разделяются символом амперсанда (&). Символы, отличные от букв и цифр, такие как, например, знак доллара, представляются в виде последовательности, состоящей из знака процента (%), за которым следует шестнадцатеричный номер символа.

    После успешной обработки полученных результатов сценарий CGI может отправить на компьютер пользователя соответствующую квитанцию, которая воспринимается браузером и воспроизводится в виде окна сообщения.

Где найти подходящие сценарии CGI

    Для обработки результатов заполнения форм большинство Web-серверов используют соответствующие сценарии CGI. Зачастую все они хранятся в специальном каталоге под названием cgi-bin. За информацией о том, где расположены сценарии CGI Web-сервера, обращайтесь к администратору сервера.

    Если на вашем сервере нет ничего подходящего, можно поискать нужные сценарии на других серверах или попробовать написать свои собственные. Множество готовых сценариев CGI представлено на Web-сайтах www.cgi-recources.com, www.free-scripts.net, www.hotscripts.com и т.д. Возможно найденные вами решения потребуют некоторой адаптации и доработки.

    После того как CGI-сценарий найден или создан, его необходимо переслать на Web-сервер, с которым вы работаете, воспользовавшись одной из программ, поддерживающей протокол FTP (например, WS_FTP Pro или Fetch).

    Некоторые провайдеры услуг Internet не разрешают размещать сценарии CGI на своих серверах, руководствуясь соображениями информационной безопасности. Если ваш провайдер именно таков, за услугами обработки результатов заполнения форм вы можете обратиться к специальным службам хостинга. Подобный сервис доступен, например, на Web-сайтах www.creative-dr.com и www.response-o-matic.com. Если же вы предпочитаете обходиться без сценариев CGI, то можете настроить форму на отправку информации по электронной почте. Некоторые Web-браузеры, однако, не поддерживают подобных функций.