stones.gif (8081 байт)

Как сократить объем вводимого текста

Вводить все равно приходится очень много, но в CGI.pm есть множество удобных функций, упрощающих набор. Каждая из этих функций возвращает строковое значение, которое Вы будете выводить. Например, header() возвращает строковое значение, содержащее строку Content-type с последующей пустой строкой, start_html(строка) возвращает указанную строку как HTML-титул (название документа), h1(строка) возвращает указанную строку как HTML-заголовок первого уровня, а р(строка) возвращает указанную строку как новый HTML-абзац.

Мы могли бы перечислить все эти функции в списке, прилагаемом к оператору use , но такой список разросся бы до небывалых размеров. В CGI.pm, как и во многих других модулях, имеются так называемые директивы импорта — метки, которые обозначают группы импортируемых функций. Вам нужно лишь поставить желаемые директивы (каждая из которых начинается двоеточием) в начале своего списка импорта. В модуле CGI.pm имеются такие директивы:

:cgi

Импортировать все методы обработки аргументов, например param() .
:form
Импортировать все методы создания заполняемых форм, например textfield() .
:html2
Импортировать все методы, которые генерируют стандартные элементы HTML 2.0.
:html3
Импортировать все методы, которые генерируют элементы, предложенные в HTML 3.0 (такие как <table> , <super> и <sub> ).
:netscape
Импортировать все методы, которые генерируют расширения HTML, характерные для Netscape.
:shortcuts
Импортировать все сокращения, генерируемые HTML (т.е. html2 + html3 + netscape ).
:standard
Импортировать "стандартные" возможности: html2 , form и cgi .
:all
Импортировать все имеющиеся методы. Полный список приведен в модуле CGI.pm, где определяется переменная %tags .

Мы будем использовать только директиву :standard .

Вот как выглядит наша программа со всеми сокращениями, которые используются в CGI.pm:

# программа ответа на форму о любом сорте мороженого (версия 2)
use CGI qw(:standard);

print header();
print start_html("Здравствуй, Мир!"),h1("Привет, земляне!"); my $favorite = param("flavor");
print "<P>Ваш любимый вкус - $favorite.";
print end_html();

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

<< Предыдущая страница Содержание Наверх Следующая страница >>

stones.gif (8081 байт)
2000, "Язык Perl. Создание CGI-скриптов на Perl." . Использованы материалы книг: Маслов В.В. Основы программирования на языке Perl - М.: Радио и связь, Горячая линия - Телеком. 1999. - 144 c.: - ISBN 5-256-01356-4; Рэндал Шварц, Том Кристиансен Изучаем Perl : Пер. с англ. - К.: Издательская группа BHV, 1998 - 320 c.: - ISBN 5-7315-0031-2.
Все пожелания - авторам: Алексею Машьянову , Александру Яковлеву .