Poslání emailu z WAPu

Náhled ve WAP emulátoru zde.
Kompletní příklad ke stažení: mail.zip

Tento příklad má tří části, a je zde použito jak WMLScriptu, tak i PHP.
1. mail.wml, který obsahuje tři karty( pro zadání dat, odeslání a oznámení chyby v adrese).
2. kontrola.wmls (kontroluje zadanou emailovou adresu)
3. odeslat.php (odeslání pošty).

***mail. wml******
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC"-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<card id="vstup" title="posta">
<p>Od: <input type="text" name="od" format="*M"/></p>
<p>Komu: <input type="text" name="adresa" format="*M"/></p>
<p>Predmet: <input type="text" name="predmet" format="*M"/></p>

<do type="accept" label="Odeslat">
<go href="kontrola.wmls#kontrola('$(adresa)')"/>
</do>
</card>

<card id="error" title="Chyba ve vstupu">
<p>$(email)</p>
<p> <a href = "#vstup">zadat znovu</a></p>
</card>
<card id="odeslat" title="posta">
<p>
<anchor>Odeslat email
<go method="post" href="odeslat.php?action=send">
<postfield name="od" value="$(od)"/>
<postfield name="komu" value="$(adresa)"/>
<postfield name="predmet" value="$(predmet)"/>
<postfield name="zprava" value="$(zprava)"/>
</go>
</anchor>
</p>
</card>
</wml>

***kontrola.wmls***
extern function kontrola(adresa) {
var chyba=false;
if (String.length(adresa)<6) {
WMLBrowser.setVar("email","chybna adresa");
chyba=true;
}
if(String.find(adresa,"@") = = (-1)) {
WMLBrowser.setVar("email","email neobsahuje @");
chyba=true;
}
if (chyba) { //návrat na příslušnou kartu
WMLBrowser.go("mail.wml#error");
} else {
WMLBrowser.go("mail.wml#odeslat");

}
};


***odeslat.php***
<?
header("Content-type: text/vnd.wap.wml");
echo("<?xml version=\"1.0\"?>\n");
echo("<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \
"http://www.wapforum.org/DTD/wml_1.1.xml\">\n\n");
?>

$server = "romeo.pf.jcu.cz"; // jméno poštovního serveru
$od = $od." (Uzivatel na: ".$server.")";


echo("<wml>\n"); // Odeslání
if(mail($adresa, $od,$predmet,$zprava) { // využití PHP funkcí
echo("<card id=\"odeslano\" title=\"odeslano\">\n"); // posta byla odeslána
echo("<p>Posta byla odeslana</p>\n");
echo("</card>\n");
}
else {
echo("<card id=\"zavada\" title=\"neodeslano\">\n"); // pošta neodeslána
echo("<p>Nemohu odeslat postu</p>\n");
echo("</card>\n");
}
echo("</wml>\n");
?>