584_________________Часть V. Разработка программ и написание скриптов

языке типа SH или PERL. Однако в этой и последующей главе термины "программа"и "скрипт"используются попеременно, так как между ними нет никакого функционального различия.

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

Существует два популярных метода отправки данных скрипту. Первый из них — метод GET, является методом, используемым по умолчанию. Если при-посылке данных не определен ни один из методов, то браузер подразумевает использование метода GET. При использовании форм метод отсылки данных определяется атрибутом METHOD тэга <FORM>. Приведем пример;

<FORM ACTION= "mail.pi"METHOD= "GET">

Когда используется метод GET, то информация, введенная пользователем, отсылается серверу в системной переменной QUERY_STRING. Для любой системной переменной существует ограничение размера передаваемой информации, равное 255 символам. Заметим, что в число этих символов входят все пробелы.

Другим часто применяемым методом является метод POST. Когда используется метод POST, то информация, введенная пользователем, отсылается непосредственно скрипту через стандартные каналы ввода/вывода программы-сервера STDIN и STDOUT. Преимущество использования метода POST заключается в отсутствии ограничения 255 символами, как это было при использовании метода GET. Приведем пример формы, использующей метод POST:

<FORM ACTION= "mail.pi"METHOD= "POST">

Прекрасное описание интерфейса CGI можно найти, обратившись по адресу:

ttp://hoohoo.ncsa.uiuc.edu/cgl/.

Характерные особенности CGI

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

Наиболее типичным вариантом использования новых свойств является придание серверу возможностей динамического ответа клиенту. Наиболее часто