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

       

Подробнее о приложении WorldTime.wml



Подробнее о приложении WorldTime.wml

Когда вы запускаете приложение WorldTime, дека1 WorldTime.wml отображает наэкране телефона названия городов и после произведенного вами выбора городазапускает сценарий языка Perl, который находится в файле WorldTimeWML.pl.Именно этот сценарий (скрипт) и выполняет расчет текущего времени. Приве- дем исходный код деки WorldTime.wml:

&lt?xml version="1.0"?&gt &lt!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"&gt

&ltwml&gt

&lthead&gt

&ltmeta http-equiv="Cache-Control" content="max-age=0" forua="true"/&gt

&lt/head&gt

&ltcard id="Choice"&gt

&ltdo type="accept"&gt &ltgo href="../waplibcgi/WorldTimeWML.pl?$(CityName)" /&gt &lt/do&gt

&ltp align="center"&gt

World Time&ltbr/&gt Select City&ltbr/&gt

&lt/p&gt

&ltp align="left"&gt



&ltselect name="CityName"&gt

&ltoption value="Honolulu"&gtHonolulu&lt/option&gt &ltoption value="London"&gtLondon&lt/option&gt &ltoption value="Los Angeles"&gtLos Angeles&lt/option&gt &ltoption value="New York"&gtNew York&lt/option&gt &ltoption value="Paris"&gtParis&lt/option&gt &ltoption value="Phoenix"&gtPhoenix&lt/option&gt &ltoption value="Tokyo"&gtTokyo&lt/option&gt

&lt/select&gt

&lt/p&gt

&lt/card&gt

&lt/wml&gt

Так же как и во всех деках формата WML, первые два ее элемента сообщают брау- зеру, какую из версий спецификации WAP поддерживает данное приложение. Внашем случае WML-страница поддерживает версию 1.0 языка XML и версию 1.1описания типа документа (DTD), разработанного ассоциацией WAP Forum.




&lt?xml version="1.0"?&gt &lt!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"&gt

Далее, за информацией о версиях, каждый WML-файл начинается с тега <wml>. Вконце каждого файла вводят </wml>, что означает окончание исходного кодаприложения. За <wml> следуют теги <head> и </head>, внутри которых находитсяинформация о самом исходном коде, включая метаданные и информацию обуправлении доступом. Многие программисты называют метаданные «данными оданных». Другими словами, в этом случае метаданные, которые считывает и об- рабатывает браузер, сообщают ему, как трактовать данные.

&lthead&gt

&ltmeta http-equiv="Cache-Control" content="max-age=0" forua="true"/&gt

&lt/head&gt

Элемент <meta> позволяет точно определить метаинформацию для исходногофайла. В нашем случае строка http-eguiv="Cache-Control" сообщает браузеруWAP, что эта часть метаинформации используется системой кэширования памяти. Аналогично, строка content=max-age=0 сообщает браузеру, что максимальноевремя, в течение которого будет кэшироваться этот файл, равно нулю секунд;значит, браузер не будет кэшировать данные, а загружать данные с сервера каж- дый раз, когда они будут запрошены. Для этой книги значение нуля было выбра- но для содействия процессу обучения читателя. При выборе нуля каждый раз,когда будут происходить изменения, они будут передаваться на телефон. В реаль- ном приложении статическое меню, подобное этому, можно использовать поумолчанию в течение 30 дней. Последняя строка forua="true" определяет, чтозначение Cache-Control предназначено для телефона и не может быть измененокаким-либо промежуточным агентом.

Далее, за начальными элементами, в исходном коде определяется единственнаякарта, которая в нашем случае называется Choice. Если вы просмотрите содер- жимое карты браузером, поддерживающим WAP, вы смелеете просмотреть список названий городов, предлагаемых картой и в конечном итоге сделать выборпо своему желанию.



Как было сказано выше, дека WorldTime.wml используется, главным образом, дляотображения названий городов и потом, после выбора пользователем города,для запуска сценария языка Perl, передавая ему при этом название города. Длявыполнения этого действия исходный код использует элемент <do>:

&ltdo type="accept"&gt &ltgo href="../waplibcgi/WorldTimeWML.pl?$(CityName)" /&gt &lt/do&gt

Элемент <do> в нашем случае подключает сценарий языка Perl, передавая емуспециальную опцию интерфейса пользователя.

Если вы внимательно рассмотрите начальное окно приложения, показанное на Рисунок 2.1, то увидите, что браузер отображает заголовок приложения World Time, и

следом предлагает выбрать город: Select City. Для центрирования этих текстовыхсообщений приложение использует тег абзаца <р> с центральным выравниванием, для перевода на следующую строку используется тег <br>. Далее используеся тег абзаца <р> повторно, только с выравниванием текста по левому краю длявыравнивания названия городов. Внутри элемента <р> используется <select>для выбора пользователем названия города:

&ltselect name="CityName"&gt

&ltoption value="Honolulu"&gtHonolulu&lt/option&gt &ltoption value="London"&gtLondon&lt/option&gt &ltoption value="Los Angeles"&gtLos Angeles&lt/option&gt &ltoption value="New York"&gtNew York&lt/option&gt &ltoption value="Paris"&gtParis&lt/option&gt &ltoption value="Phoenix"&gtPhoenix&lt/option&gt &ltoption value="Tokyo"&gtTokyo&lt/option&gt

&lt/select&gt

Элемент <select> позволяет пользователю производить выбор из определенного списка городов, устанавливая значение выбранной опции в переменную, доступную во всей деке. В предыдущем элементе <select> браузер присваивал значение выбранного элемента переменной "CityName".


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