Пособие по написанию WAP-сайтов


Подробнее о сценариях языка Perl,используемых в приложении



Подробнее о сценариях языка Perl,используемых в приложении


Когда пользователь выбирает опцию Zip Code (Почтовый индекс) в приложенииWeatherlnfo, в исходном коде ему предлагается ввести почтовый индекс. Далее запускается сценарий языка Perl, который этот индекс анализирует. Если пользователем введен разрешенный индекс (в нашем случае один из нескольких известных приложению), сценарий открывает, а затем печатает соответствующий файло погоде (вывод которого перехватывается браузером). Если пользователь ввелнедоступный почтовый индекс, сценарий открывает файл Unknown.wml, исходный код которого производит отображение сообщения об ошибке. Исходныйкод сценария языка Perl ZipWeatherWML.pl приведен ниже:

#!/usr/bin/perl

print "Content-type: text/vnd.wap.wml\n\n";

$Buffer = $ENV{'QUERY_STRING'};

if ($Buffer eq "87101") { $FileName = "../Weather/87101.wml"; } elsif ($Buffer eq "87701") { $FileName = "../Weather/87701.wml"; } elsif ($Buffer eq "89101") { $FileName = "../Weather/89101.wml"; } elsif ($Buffer eq "89501") { $FileName = "../Weather/89501.wml"; } else { $FileName = "../Weather/Unknown.wml"; }

open (WeatherInfo, $FileName);

while (&ltWeatherInfo&gt) { print; }

close (WeatherInfo);


Первая строка сценария представляет собой комментарий, сообщающий интерпретатору командной строки, где находится интерпретатор языка Perl. Втораястрока информирует браузер (который перехватывает вывод) о том, что результатом работы сценария будет создание исходного кода формата WML. Далее используется функция $ENV для извлечения параметра почтового индекса.


После получения сценарием этого индекса используется серия конструкций if-else для определения, является ли введенный индекс доступным. Если сценарийраспознал введенный индекс, он присваивает имя файла формата WML этого индекса переменной $FileName. Позднее сценарий откроет и выведет соответствующий файл (который может быть и файлом Unknown.wml).


Начало  Назад  Вперед



Книжный магазин