WAPový vtip server - Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



PHP

WAPový vtip server

10. května 2001, 00.00 | Popis jednoduché WAPové aplikace pro náhodné zobrazovaní vtipů. Spoluprací s PHP tak získáte zajímavé oživení vašich WAP stránek..

Kedysi pred rokom som sa chcel naučiť tvoriť stránky vo WAPe. A aby to malo nejaký význam, tak som hľadal príklad aplikácie, ktorý by bol zároveň účelný. Spomenul som si na jednoduchú aplikáciu z knihy J. Koseka o PHP - generátor vtipov. Keďže aplikácia nevyžaduje databázu, bude ju teda možné umiestniť aj na nejaký free PHP webhosting. Aplikácia generuje jednoduchý textový výstup - čo je vhodné pre zobrazenie na malý display mobilného telefónu, taktiež nie je použitá diakritika. Nakoniec je to vhodný príklad, ako si švihnúť medzi kamarátmi či kolegami vlastniacimi mobil s WAPom.

Nebudem tu popisovať špecifiká tvorby WAP stránok, či jazyk WML, na webe je množstvo odkazov - dobrá je napríklad učebňa na http://www.wapserver.cz/wml/

Pre svoje WAP stránky používam nasledovnú "kostru" WML dokumentu:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<template>
<do type="prev" label="Spet">
<prev/>
</do>
</template>
<card id="Nazev" title="Nazev nebo URL">
<p>
Obsah stranky ...
<br/>
</p>
</card>
</wml>

V tomto príklade "prázdnej" WAP stránky je zahrnutá funkcia Spet, ktorá využíva červené tlačítko mobilu (tzv. Back). Hoci pre náš príklad aplikácie vtipového serveru to nie je potrebné, odporúčam funkciu štandartne vkladať do svojich WAP stránok. Za tagom <p> bude vložený obsah stránky, teraz je tam krátky text, ale potom tam dáme výstup tvorený PHP skriptom.

Teraz si pripravíme PHP skript, ktorý vygeneruje náhodný vtip - nájdete ho tu alebo v Kosekovej knihe na stranách 207-208. Jediná úprava spočíva v tom, že pre istotu skonvertujeme znaky do HTML podoby a nahradíme konce riadkov tagom <br>. T.j. pred príkaz return $vtip sme vložili:

$vtip = NL2BR(HTMLSpecialChars($vtip)); // konverzia do HTML sady

A môžeme pristúpiť k tvorbe finálnej verzie WAP vtipového servera. Kostru WML dokumentu umiestnime do suboru index.php3. Na začiatok skriptu v súbore index.php3 musíme vložiť poslanie hlavičky s informáciou, že bude nasledovať dokument vo formáte WML. Predpokladajme, že Vaša inštalácia web serveru tento typ pozná. Ak nie, tak požiadajte správcu, aby to doplnil. Napr. pre Apache je potrebné do súboru mime.types vložiť riadok:

text/vnd.wap.wml        wml

Poslanie WML hlavičky v PHP vyzerá takto:

Header("Content-Type: text/vnd.wap.wml");

Ďalej pokračuje WAP stránka podľa predlohy spomenutej vyššie. Namiesto textu Obsah stranky vložíme:

require("./vtip.php3");
echo EReg_Replace("<br>","<br/>",GetVtip());

WML používa tag <br/> pre nový riadok. Doporučujem zvýšenú pozornosť zápisu tagov, lebo WML je prísny na dodržiavanie štandartnej štruktúry tagov (nakoniec ako každá XML norma). Aj malý prehrešok môže spôsobiť nefunkčnosť Vašej stránky.

A aby bola naša aplikácia aspoň trochu interaktívna, tak pridáme za tag <br/> nasledovný riadok:

<a href="./index.php3">Dalsi vtip</a>

Umožní návštevníkovi, aby si prečítal ďalší náhodne vybraný vtip stisknutím odkazu Dalsi vtip.

To je všetko. Kompletné zdrojové texty a dátové súbory uvedenej aplikácie nájdete tu. Funkčný príklad je umiestnený na http://roman.skultety.sk/vtip/ Pre jeho prezretie potrebujete WAP mobil alebo niektorý z emulátorov, môj obľúbený je na http://www.gelon.net Tam nájdete aj tzv. WAPalizér, čo je emulátor umožňujúci rozšíriť vaše web stránky o schopnosť prezerať WAP stránky.

Na záver želám veľa zábavy, či už s WAPom alebo vtipmi.




P.S. Ako perličku uvediem jednu moju skúsenosť s touto aplikáciou. Mal som ju umiestnenú na jednom free PHP hostingu a taktiež som ju zaregistroval do rôznych WAP katalógov. Stránka bola celkom navštevovaná, tak som na koniec skriptu index.php3 pridal sledovanie návštevníkov, resp. ich zariadení, z ktorých pristúpili na stránky, do log súboru:

$fp = fopen("./log.txt","a");
fputs($fp,date("Y:m:d H:i:s ") . $HTTP_USER_AGENT . "\n");
fclose($fp);

Aké bolo moje prekvapenie, keď som zistil, že asi polovica návštev nebola z mobilných telefónov, ale z rôznych emulátorov, t.j. z klasických stolných PC. Holt, cesty a spôsoby užívateľov sú nevyspytateľné :-)

P.P.S. Malý slovník skratiek:
WAP - Wireless Application Protocol
WML - Wireless Markup Language (100% spĺňajúci štandard XML)

Tématické zařazení:

 » Rubriky  » PHP  

 » Rubriky  » Web  

 

 

 

Nejčtenější články
Nejlépe hodnocené články

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: