moje první zkušenost s wml

vyzkoušel jsem si jaxe dělají wapové stránky

protože, mi napsal petr buigl z dopravni-situace.cz, že zveřejňováním obrázků jejich dopravních kamer na svých stránkách (brněnský kamerový systém) porušuju autorská práva, domluvil jsem se s ním, že je tedy budu zobrazovat jen při načtení stránky z mobilu a případně jim pomůžu udělat verzi pro pda a wap.

jelikoz mě minulý týden kontaktoval, že by s tím chtěl pomoct, pustil jsem se do toho. s pda verzí jsem neměl problémy, protože už jsem ji měl hotovou na svých stránkách, ale o wap-u jsem toho příliš nevěděl. z toho důvodu jsem mrkl na web a vše, co jsem potřeboval vědět, jsem našel jsem na serveru w3schools.com.

pomocí tutoriálu na výše uvedeném serveru a validátoru na serveru validome.org jsem měl wapové stránky hotové taky za pár minut.

wml je hodně podobné html, ale wapové prohlížeče jsou méně tolerantní než html prohlížeče. stačí třeba u tagu img nepoužít parametr alt a wapový prohlížeč nahlásí chybu a stránku nezobrazí.

ukázková wml stránka, která projde validátorem by mohla vypadat třeba takhle:

<?xml version="1.0"?> 
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> 
<wml> 
<card title="ukazkova wapova stranka"> 
 <p> 
  <big>ukazkova wapova stranka</big><br/> 
 </p> 
 <p> 
  text nad obrazkem<br/> 
  <img src="obrazek.wbmp" alt="obrazek"/> 
 </p> 
 <p> 
  <a href="stranka1.htm">odkaz na stranku1</a><br/> 
 </p> 
</card> 
</wml>

dosáhnout vygenerování takového obsahu byla samosebou brnkačka, ale pro to aby vše bylo funkční, je nutné odeslat v hlavičce, že se jedná o wml stránku, čehož jsem dosáhl voláním funkce header() s patřičným parametrem. tady je celý script generující wml stránku.

<?PHP
// vytvoreni obsahu wml stranky
  
$obsah="<?xml version=\"1.0\"?>\n";
  
$obsah.="<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">\n";
  
$obsah.="<wml>\n";
  
$obsah.="<card title=\"ukazkova wapova stranka\">\n";
  
$obsah.="\t<p>\n";
  
$obsah.="\t\t<big>ukazkova wapova stranka</big><br/>\n";
  
$obsah.="\t</p>\n";
  
$obsah.="\t<p>\n";
  
$obsah.="\t\ttext nad obrazkem<br/>\n";
  
$obsah.="\t\t<img src=\"obrazek.wbmp\" alt=\"obrazek\"/>\n";
  
$obsah.="\t</p>\n";
  
$obsah.="\t<p>\n";
  
$obsah.="\t\t<a href=\"stranka1.htm\">odkaz na stranku1</a><br/>\n";
  
$obsah.="\t</p>\n";
  
$obsah.="</card>\n";
  
$obsah.="</wml>";
// odeslani hlavicek  
  
Header("Content-Type: text/vnd.wap.wml; charset=\"utf-8\"");
  
Header("Content-Length: ".strval(strlen($obsah)));
// odeslani obsahu dokumentu
  
echo $obsah;
?>