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




Рассмотрение Peri-сценария RealEstateHDML.pl - часть 2


if ($Option eq "")

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

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

&ltDisplay Name=Error&gt

&ltAction Type=Accept Label=Back Task=GO Dest=../RealEstate/RealEstate.hdml&gt

&ltWrap&gtNo houses match the price range.

&lt/Display&gt

&lt/HDML&gt";

}

else

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

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

&ltChoice Name=Pick&gt

&ltAction Type=Accept Label=View&gt &ltAction Type=Soft1 Label=Back Task=GO Dest=../RealEstate/RealEstate.wml&gt

&ltLine&gtPick a house&ltbr&gt ...MLS#....Price..

" . $Option . "

&lt/Choice&gt

&lt/HDML&gt"; }

}

print $Deck;

Как можно видеть, сценарий использует пять переменных, от $Pricel до$Price5, чтобы отслеживать цены домов, которые известны сценарию. Как и впредыдущем сценарии, для определения факта попадания цены дома в указанныйдиапазон, в программном коде используется серия операторов if. После того какпросмотрены цены всех пяти домов, приложение формирует HDML-страницу, которая с помощью элемента <Choice> создает меню из опций, отвечающих условиям поиска (опции сценарий сохраняет в переменной $0ption). Когда пользователь позднее выбирает из списка некоторый конкретный дом, HDML-приложение загружает HDML-страницу, соответствующую выбранному дому. Например, файл 77711 .hdml содержит следующий программный код:

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

&ltDisplay Name=House&gt

&ltAction Type=Accept Label=Back Task=PREV&gt

&ltLine&gtMLS #:LV77711&ltbr&gt &dol;249,995&ltbr&gt Las Vegas&ltbr&gt 4 BR / 2 Ba&ltbr&gt 4100 SF&ltbr&gt &ltA Task=GOSUB Dest=#MoreInfo&gtMore Info&lt/A&gt

&lt/Display&gt

&ltDisplay Name=MoreInfo&gt

&ltAction Type=Accept Label=Back Task=RETURN&gt

&ltLine&gtLot Size: 400X400&ltbr&gt Year Built: 1998&ltbr&gt Fireplace: Yes&ltbr&gt Patio: Yes&ltbr&gt Pool: Yes&ltbr&gt Spa: Yes

&lt/Display&gt

&lt/HDML&gt

Когда HDML-страница запускает первую карту, браузер выполняет программныйкод, располагающийся внутри элемента House. Если пользователь выбирает опцию More Information (Дополнительная информация), выполняется ветвлениепрограммного кода и переход (с использованием задания GOSUB) на элементMorelnfо.






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