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


Подробнее о сценарии языка Perl StockQuoteWML.pl



Подробнее о сценарии языка Perl StockQuoteWML.pl


Как было сказано выше, каждый раз, когда пользователь вводит символ акции,приложение вызывает сценарий языка Perl, который и отображает информациюо выбранной акции. На самом деле для отображения информации о конкретнойакции сценарий загружает другой файл, относящийся непосредственно к выбранной акции. Например, для отображения информации об акциях Nokia (символ NOK), сценарий загружает файл NOK.wml. Сценарий StockQouteWML.pl имеетследующий исходный код:

#!/usr/bin/perl

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

$Buffer = $ENV{'QUERY_STRING'};

if ($Buffer eq "AIRO") { $FileName = "../StockQuote/AIRO.wml"; } elsif ($Buffer eq "PHCM") { $FileName = "../StockQuote/PHCM.wml"; } elsif ($Buffer eq "PCS") { $FileName = "../StockQuote/PCS.wml"; } elsif ($Buffer eq "NOK") { $FileName = "../StockQuote/NOK.wml"; } elsif ($Buffer eq "*") { $FileName = "../StockQuote/ShowAll.wml"; } else { $FileName = "../StockQuote/BadSYM.wml"; }

open (StockInfo, $FileName);

while (&ltStockInfo&gt) { print; }

close (StockInfo);


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


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

$Buffer = $ENV{'QUERY_STRING'};


Далее, сценарий использует последовательность конструкций if-else для определения имени символа.


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