Авторизация
Регистрация
Войти как пользователь

   Сделать стартовой
   Добавить в избранное

Полезные службы:
  
 «С миру по нитке»
Он-лайн новости Мира  (2500)
Последние новости Тасс.ру
Статьи о нашем бытии  (2000)
НЛО и обитатели Космоса
Флаги Стран нашей Земли
 Библиотека мудрости
Технология Бессмертия
Медитации и упражнения
Притчи  (3812)
Сказки  (1916)
Головоломки  (1216)
Фантастика Отечественная
 Заработок в Интернете
Брокер трибунал
Доход от инвестирования
Основы AdSense-бизнеса
18 признаков идеальн.бизнеса
 Web-программирование
Регистрация сайта в каталогах
Учебники CSS,PHP,HTML,JS
Примеры JavaScript  (79)
CMS-программа SiteEdit
FAQ по программе SiteEdit
 Игры, отдых, общение
Рисунки моих друзей
Играем на фортепиано
Классический тест IQ
Игры Flash  (67)
Игры JavaScript  (60)
 Анкеты, опросы, инфо
Доска объявлений
Голосование
Информер Курса валют

Ссылки  Обмен ссылками



Новости RSS
Особое мнение : Валерий Соловей 22.01.2021 г. 19:08 Гости: Валерий Соловей Ведущ...
Особое мнение : Николай Сванидзе 22.01.2021 г. 17:08 Гости: Николай Сванидзе Веду...
Особое мнение : Максим Шевченко 21.01.2021 г. 19:08 Гости: Максим Шевченко Ведущ...
Особое мнение : Виктор Шендерович 21.01.2021 г. 17:08 Гости: Виктор Шендерович Вед...
Особое мнение : Особое мнение СПб. Наталья Зубаревич 21.01.2021 г. 11:06 Гости: Наталья Зубаревич Вед...
Особое мнение : Константин Сонин 20.01.2021 г. 19:07 Гости: Константин Сонин Веду...
Особое мнение : Михаил Виноградов 20.01.2021 г. 17:08 Гости: Михаил Виноградов Вед...
Особое мнение : Александр Кынев 19.01.2021 г. 19:05 Гости: Александр Кынев Ведущ...
Особое мнение : Сергей Алексашенко 19.01.2021 г. 17:05 Гости: Сергей Алексашенко Ве...
Особое мнение : Особое мнение СПб. Сергей Цыпляев 19.01.2021 г. 11:06 Гости: Сергей Цыпляев Ведущи...
 
   

ASP 03. Программируем Wap

Часть 3

Программируем Wap

In the beginning, He created HTML and the Web.
And the Web was without form, and void;
and darkness was upon the face of the deep.
And He said, «Let there be tags», and there were tags.
And He said, «Let there be design in the midst of the content,
and let it divide the content from the content».
And the night followed the day, and the years passed...

Рубен Садоян

Введение

Что дает WAP

Что же такое WAP?

Основы WAP

Краткий обзор основ WML

Основные элементы и WML-тэги

    Меню опций

    Якоря

    Переменные

    Пользовательский ввод

    Другие элементы

    Таймеры

Телефонные особенности

Что же нам понадобится?

    Эмулятор

    Постановка задачи

    Создание и подготовка базы данных

Создание и подготовка первого WAP-приложения

Прежде чем мы приступим…

Выбор аэропорта назначения (index.asp)

Выбор даты и времени вылета (Dates.asp)

Выбор атрибутов рейса (Flight.asp)

Подтверждение бронирования (Order.asp)

Регистрация заказа в системе и выдача клиенту идентификатора (Register.asp)

Заключение


Возврат к  Содержанию

Введение

В первой статье серии «ASP на блюдечке» («ASP на блюдечке. Часть 1. Построение интерфейса к базе данных», КомпьютерПресс 9’2000) мы познакомились с ASP, а также с принципами построения простейшего интерфейса к базе данных с его помощью (газетный сайт со встроенными возможностями его пополнения новыми статьями, снабжаемыми фотографиями, непосредственно с самого сайта и без программирования). Вторая статья « ASP на блюдечке. Часть 2. ActiveX компоненты и ASP» (КомпьютерПресс 10’2000) была посвящена основам использования ActiveX-компонентов в ASP, а также азам разработки собственных компонентов с помощью известных всем Microsoft VB и Microsoft VC++.

Итак, серия продолжается, и теперь предлагаю читателям ознакомиться с возможностями, предоставляемыми ASP в поддержку программирования WAP-сайтов, и создать собственную WAP-систему бронирования авиабилетов.

Что дает WAP

WAP добавляет к Интернету новое измерение — мобильность. Вы можете покупать или бронировать билеты, заказывать различные услуги или производить операции с вашим банковским счетом и т.д. На первый взгляд все это может показаться недоступным для обычного пользователя, однако, как показывают многие социологические опросы, WAP уже захватил многие области сервиса и продолжает захватывать новые. В автобусе, на пляже, в кино… — везде. Информация там, где она необходима. И не только информация, но и взаимодействие с пользователем. Более того, согласно прогнозам некоторых статистических компаний, в недалеком будущем мобильный телефон станет постоянной и неотъемлемой частью практически любого человека. В развитых странах мира, да и у нас в России, он уже давно перестал являться атрибутом роскоши. Так, к примеру, количество зарегистрированных мобильных телефонов на апрель 2000 года в Японии приблизилось к количеству абонентов городских телефонных сетей, а в ближайшие два года, согласно прогнозам, превысит его более чем в 1,5 раза. Одновременно со спросом на мобильные телефоны растет и число компаний-провайдеров (поставщиков услуг сотовой связи), увеличивается конкуренция между ними и, как следствие, в ближайшее время ожидается снижение платы за оказываемые ими услуги. Таковы законы рынка. И не стоит забывать самого главного: волна популярности мобильных телефонов порождает волну популярности WAP-сайтов и WAP-приложений. Ведь купив мобильный телефон, клиент рано или поздно обязательно захочет узнать о погоде, о спорте, заказать билеты в театр или ужин в ресторане и т.д.

Что же такое WAP?

Дословно WAP (Wireless Application Protocol) — протокол беспроводных приложений.

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

Мобильность означает повсеместный доступ к WAP-приложению (что, собственно, и обеспечивает мобильный телефон).

Относительно механизма оплаты следует сказать следующее. Поскольку оплата за телефонный звонок и другие услуги, предоставляемые телефонными компаниями, производится непосредственно с использованием баланса абонента (SIM-карты, или обычной пластиковой карты), то в самом ближайшем будущем взимать определенную плату и за пользование WAP-услугами, используя при этом тот же самый баланс абонента, не составит труда. Таким образом, телефонный счет будет включать в себя и счет за оказание WAP-услуг. Так что заводить новый счет или новую карту для оказания WAP-услуг пользователю не придется.

Основы WAP

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

Итак, WAP — открытая спецификация, предназначенная для стандартизации способов и форматов (протоколов), с помощью которых мобильные телефоны получают доступ к различным услугам в Сети. Надо сказать, что спецификация WAP в настоящее время все еще находится в стадии разработки, поэтому мы будем рассматривать ее текущую версию — 1.1. Автором — разработчиком спецификации WAP является так называемый WAP-форум WAP Forum (http://www.wapforum.com/), в настоящее время ведущий разработку версии 1.2, выхода спецификации которой мы ожидаем в самое ближайшее время. Желающим скачать всевозможные описания стандартов WAP- и других протоколов для работы с мобильными телефонами советую посетить специальную страничку WAP-форума (http://www.wapforum.com/what/technical.htm).

WAP-протокол является не просто протоколом передачи, это некая надстройка над известными всем протоколами передачи данных, а точнее их частный случай. Данное обстоятельство в значительной мере облегчает разработку WAP-сайтов и WAP-приложений. WAP-протокол использует очень схожую с используемой для передачи данных по компьютерным сетям и, в частности, по Интернету (известная всем семиуровневая модель ISO). Как известно, более низкие уровни (физический, канальный и сеансовый) отвечают за физическую передачу данных и не представляют особого интереса для разработчиков, а вот более высокие уровни модели, используемой протоколом WAP (транспортный, сетевой и прикладной), очень походят на своих «собратьев», используемых для протоколов передачи данных по WWW. В частности, на известный всем старый добрый протокол HTTP. Так что создатели WAP-протокола позаботились и о разработчиках WAP-приложений: разработчикам WAP-сайтов не придется переучиваться. Используя привычные CGI-средства, можно разрабатывать и WAP-сайты.

Конечно, у мобильных телефонов более строгие ограничения на форматы и на объемы передаваемых данных, а следовательно, на возможности клиентов. Поэтому в WAP используется язык описания, несколько отличающийся от HTML и представляющий собой его частный случай. Называется он WML (Wireless Mark-up Language). По сути, это XML-основанный язык компоновки форматированного текста, предоставляющий навигационные возможности различным WML-документам по переходам между собой и между частями одного и того же WML-документа. Аналогом же языка описания сценариев JavaScript для WAP-сайтов и WAP-приложений является WMLScript, который не только позволяет в какой-то степени программировать «логику мобильников», но и получать доступ к некоторым функциям мобильных телефонов.

Прежде всего определим понятие клиента в случае взаимодействия сервер-телефон. С точки зрения разработчика клиентом является не сам телефон, а программный компонент, называемый шлюзом WAP, который преобразовывает запросы мобильного телефона в запросы HTTP и перенаправляет HTTP-ответы Web-сервера мобильному телефону (опять-таки через WAP-шлюз). Шлюз WAP сжимает WML-файлы в двоичный формат. Несмотря на то что некоторые современные шлюзы WAP способны преобразовывать HTML в WML, не стоит полагаться на то, что HTML-сайт будет столь же приглядно выглядеть и на мобильной трубке, и все-таки разработать его WML-версию.

Однако нам шлюз WAP не понадобится, поскольку для отладки WAP-приложений и WAP-сайтов мы будем использовать эмулятор WAP, который будет скачивать WML-файл непосредственно с Web-сервера (или открывать его с локальной файловой системы, как в нашем случае) и воспроизводить все содержимое в окошке эмулятора мобильной трубки. На рис. 1 показана обобщенная схема взаимодействия мобильного телефона с Web-сервером. Пунктиром обозначено взаимодействие Web-сервера с эмулятором WAP.

Краткий обзор основ WML

Прежде чем приступить к разработке нашего первого WAP-приложения, необходимо представить себе хотя бы основы «беспроводного» языка разметки–WML.

Как уже было отмечено, WML — XML-основанный язык, наследующий набор символов XML-документа. Основу WML составляет понятие карты (card), определяющей единичное взаимодействие между пользователем и сервером. Карты, в свою очередь, группируются в «палубы» (decks). Палубы — наименьшие части WML, которые Web-сервер может послать клиенту и которые, как правило, активируют первую карту в палубе, хотя те же действия можно проделать практически с любой картой палубы. Проводя аналогию, можно представить палубу как HTML-документ, состоящий из множества адресуемых разделов. Это означает, что к каждой карте палубы можно адресоваться непосредственно с использованием специального синтаксиса: #label.

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

WML, в отличие от HTML, — case-sensitive язык компоновки. Это означает, что он различает прописные и строчные буквы. Кроме того, WML преобразовывает несколько последовательных символов новой строки, возврата каретки или табуляции в один.

Рассмотрим простейший WML-документ (предполагается, что читатель знаком с основами XML).

Установите и запустите Nokia WAP Toolkit — появится два окна: первое — представляет исходный текст WML, второе — собственно эмулятор мобильного телефона (рис. 2).

Выберите команду File->New->WML Deck для создания шаблона пустой палубы. Появится пустая форма палубы:

 
 

по сути, палуба является полноценным XML-документом. Поэтому WML-документ должен начинаться со стандартного XML-заголовка и ссылки на DTD:

 









контакты