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

       

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



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

Как и приложение формата WML, приложение формата HDML использует сценарий языка Perl для анализа введенной информации о заказе. Эту информациюсценарий получает из деки CatalogDone.hdml. После того, как будут проанализированы полученные данные, сценарий создает исходный код формата HDML,отображающий информацию о заказе. Исходный код сценарияCatalogOrderHDML.pl приведен ниже:

#!/usr/bin/perl

read (STDIN, $Buffer, $ENV{'CONTENT_LENGTH'});

@data = split(/&/, $Buffer);

$ItemNum = $data[0]; $ItemDesc = $data[1]; $ShipName = $data[2]; $ShipAddr1 = $data[3]; $ShipAddr2 = $data[4]; $ShipCity = $data[5]; $ShipState = $data[6]; $ShipZip = $data[7]; $ShipPhone = $data[8]; $BillName = $data[9]; $BillAddr1 = $data[10]; $BillAddr2 = $data[11]; $BillCity = $data[12]; $BillState = $data[13]; $BillZip = $data[14]; $BillPhone = $data[15]; $CardType = $data[16]; $CardNum = $data[17];

#Do processing here...

$Deck = "Content-type: text/x-hdml

&ltHDML Version=3.0 Markable=True TTL=0&gt

&ltDisplay&gt

&ltAction Type=Accept Task=GO Dest=../CatalogOrder/CatalogItem.hdml&gt

Input data:&ltbr&gt&ltbr&gt

\$ItemNum&ltbr&gt \$ItemDesc&ltbr&gt&ltbr&gt \$ShipName&ltbr&gt \$ShipAddr1&ltbr&gt \$ShipAddr2&ltbr&gt \$ShipCity&ltbr&gt \$ShipState&ltbr&gt \$ShipZip&ltbr&gt \$ShipPhone&ltbr&gt \$BillName&ltbr&gt \$BillAddr1&ltbr&gt \$BillAddr2&ltbr&gt \$BillCity&ltbr&gt \$BillState&ltbr&gt \$BillZip&ltbr&gt \$BillPhone&ltbr&gt \$CardType&ltbr&gt \$CardNum

&lt/Display&gt

&lt/HDML&gt";

print $Deck;

Для проведения анализа данных, полученных с использованием функции $ENV,сценарий считывает всю информацию о переданных параметрах в переменную$Buffer. Далее, используя функцию разделения split (), переписывает параметры в массив (помните, что дека формата HDML поместила между параметрамисимвол &, который функция разделения использует для распознавания каждогоотдельного параметра). После этого значения элементов массива просто присваиваются соответствующим переменным. Строка внутри сценария, котораягласит Do processing here (Здесь происходит обработка) представляет область,где вы должны поместить исходный код для взаимодействия с существующимиприложениями для электронной коммерции вашей компании.





Содержание раздела