Первое что мы сделаем это настроим хост. Для этого создаём в корневой директории файл .htaccess (с точкой в начале) и записываем в него следующие строки: Options -Indexes DirectoryIndex index.php index.wml AddType audio/midi .mid .midi AddType text/vnd.wap.wml;charset=windows-1251 wml AddType application/x-smaf .mmf AddType application/vnd.wap.wmlc wmlc AddType text/vnd.wap.wmlscript wmls AddType application/vnd.wap.wmlscriptc wmlsc AddType image/vnd.wap.wbmp wbmp AddType text/vnd.sun.j2me.app-descriptor;charset=UTF-8 jad AddType application/java-archive jar Объясняю, что обозначает каждая из них. Options - Indexes - не разрешаем показ директории, если в нём отсутствует индексный файл DirectoryIndex index.php index.wml - задаём индексные файлы. Приоритеты идут по порядку перечисления от высшего к низшему AddType audio/midi .mid .midi - файлам с расширением .mid и .midi присваиваем тип MIDI AddType text/vnd.wap.wml;charset=windows-1251 wml - задаём кодировку windows-1251 для всех wml страниц AddType application/x-smaf .mmf - обычно не требуется, но на всякий случай лучше добавить Последующие строки позволяют правильно определять файлы wml со скрипами. AddType image/vnd.wap.wbmp wbmp - определяем новый формат рисунков wbmp AddType text/vnd.sun.j2me.app-descriptor;charset=UTF-8 jad и AddType application/java-archive jar - эти 2 строчки нужны для того, чтобы правильно определялись и соответственно не было проблем с загрузкой jad и jar файлов. Чаще всего они обязательны. Итог. С помощью .htaccess мы подготовили хост под наш будущий WAP сайт. Первая страница + немного теории Создадим файл index.wml с вот таким содержанием: <?xml version="1.0" encoding="windows-1251"?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"><wml><card id="FirstPage" title="Первая страница"><p>WAP.SoftoRooM.NeT - твой мобильный мир без границ!</p></card></wml> Отмечу, что язык WML (Wireless Markup Language, язык разметки для беспроводных устройств) является подвидом языка XML (eXtensible Markup Language, расширенный язык разметки). Тот, кто знаком с XML очень легко адаптируется под WML. Рассмотрим страницу подробнее. Первый элемент - <?xml version="1.0" encoding="windows-1251"?> - это стандартная декларация XML. Второй элемент тоже унаследован из XML - это DTD (Document Type Definition). Он нужен для автоматизированной проверки корректности WML страницы по методу DTD (например, в программе XMLSpy). <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"> Тегом <wml> мы открыли набор карт. Тегом <card id="FirstPage" title="Первая страница"> мы задали уникальный ID карты и её заголовок. На HTML тегах подробно не останавливаюсь, в интернете куча инфы ищите сами. Закрываем набор карт - </card> и WML страницу - </wml>. Полученный файл заливаем на хост. Просматриваем с мобильника или в Opera. Кодировка На данный момент существует несколько решений проблем с кодировкой. Использовать Unicode. Достоинства: не нужно декларировать в заголовке WML, корректно отображается на всех мобильных телефонах. Недостатки: очень большой вес страниц (один символ равен семи, пример буква А в Unicode выглядит А), сложно редактировать подобные документы, для просмотра обязательно требуются дополнительные программы. Использовать UTF-8. Достоинства: значительно экономнее Unicode; родная кодировка для многих мобильников, поэтому отображается без проблем; поддерживается в некоторых программах (Lister в Total Commander), что облегчает чтение WML в отсутствие браузера. Недостатки: опять же страницы по размеру получаются большими, для редактирования нужны спец. программы, требуется декларация в заголовке WML (encoding="UTF-8"). Использовать koi8-r. Достоинства: оптимальность; WML страницы легко править в редакторе Bred или в среде Linux. Недостатки: для работы со страницами нужен спец. редактор. Использовать windows-1251. Достоинства: оптимальность; максимально лёгкая разработка страниц. Страницы можно просматривать/редактировать не имея дополнительных инструментов. Недостатки: теоретически может плохо отображаться на экранах мобильных телефонов, где нет явной поддержки windows-1251. PHP и WAP WAP вполне совместим с PHP. Поддерживаются основные методы: POST и GET. Рассмотрим на примере. Создаём страничку: <?xml version="1.0" encoding="windows-1251"?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"><wml><card id="phpwap" title="PHP-WAP"><input title="сообщение" name="mess"/><br/><anchor title="Принять">Принять<go href="test.php" method="post"><postfield name="mess" value="$(mess)"/></go></anchor></card></wml> В результате получим страницу с полем ввода и ссылкой "Принять". Записав текст и нажав "Принять" мы передадим значение поля в переменную $mess и направим на обработку в скрипт test.php. Создание скриптов здесь мы рассматривать не будем, это отдельная тема. Как многие уже догадались WAP можно прикрутить к MySQL. Возможны различние комбинации. Формирование страниц из таблиц БД "на лету", внос записей в БД из WML форм или всё сразу
|