Попробовал сделать авторизацию с помощью SWML, а потом подумал, что я делаю-то?!  Сделал авторизацию отдельным файлом на php
wap.php
| Код | <?php //Begin. Preparation for API Yandex.Detector $obj=''; $xmldata=''; require_once "wapdetector.php"; $obj=new WapDetector(); $xmldata=$obj->getDetectorData(); //End. Preparation for API Yandex.Detector
//Begin. DOM object processing $x='9999'; $y='9999'; $obj=''; require_once "domobjectprocessing.php"; function get_obj() { return new DOMObjectProcessing($this); } $obj=get_obj()->getXMLData($xmldata); $x=$obj->x; $y=$obj->y; //End. DOM object processing
// Output page. Begin $obj=''; require_once "wmlpage.php"; $obj=new WMLPageOutput(); $obj->WMLPageOutputEcho($x,$y); // Output page. End ?>
|
wapdetector.php
| Код | <?php class WapDetector { private $headers; private $key; private $value; private $opts; public $xmldata;
function getDetectorData() { foreach ($_SERVER as $key => $value) { if (strpos($key, 'HTTP_') === 0 && $key != 'HTTP_HOST' && $key != 'HTTP_CONNECTION') { $key = strtolower(strtr(substr($key, 5), '_', '-')); $headers .= $key . ': ' . $value . "\r\n"; } } $opts = array( 'http'=>array( 'method'=>"GET", 'header'=> $headers, ) ); $xmldata = file_get_contents('http://phd.yandex.net/detect', false, stream_context_create($opts)); return $xmldata; } } ?>
|
domobjectprocessing.php
| Код | <?php class DOMObjectProcessing{ public $x='9999'; public $y='9999'; private $xml=''; private $dom=''; private $root=''; private $nodeList=''; private $i=''; private $child=''; private $xmldata=''; function getXMLData($xmldata) { $xml="<?xml version='1.0' encoding='UTF-8'?>".$xmldata; $dom=new domDocument(); $dom->loadXML($xml); $root=$dom->documentElement; $nodeList=$root->childNodes; for ($i=0; $i<$nodeList->length; $i++){ $child=$nodeList->item($i); if ($child->nodeName=='screenx') { $x=$child->nodeValue; $this->x = $x; } if ($child->nodeName=='screeny') { $y=$child->nodeValue; $this->y = $y; } } return array($x,$y); } } ?>
|
wmlpage.php
| Код | <?php class WMLPageOutput{ function WMLPageOutputEcho($x,$y){ if ($x=="") {$x=999;} if ($x < 640) { header("Content-type: text/vnd.wap.wml"); echo "<?xml version=\"1.0\"?>"; echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">"; echo "<wml>\n"; echo "<card id=\"authorization\" title=\"Authorization\">\n"; echo "<p>"; echo "<img src=\"logo-wap.wbmp\" alt=\"pic\" />\n"; echo"<do type=\"accept\" label=\"Response\"><go href=\"auth.php\" method=\"post\"><postfield name=\"password\" value=\"$(password)\"/><postfield name=\"login\" value=\"$(login)\"/></go></do>"; echo "Login: <input name=\"login\" type=\"text\" tabindex=\"0\" /><br/>Password:<input name=\"password\" type=\"password\" tabindex=\"1\" /><br/>"; echo "\n<anchor>Go to HTML version<go href=\"html.htm\"/></anchor>"; echo "\n"; echo "\nx=$x, y=$y\n"; print_r($_SERVER['HTTP_USER_AGENT']); echo "</p>\n</card><card id=\"results\" title=\"The Results\"><p>Login: $(login)\n\nPassword: $(password)</p></card>\n</wml>\n"; } else{ header ("Content-Type: text/html; charset=UTF-8"); echo file_get_contents('html.htm'); }
} } ?>
|
html.htm
| Код | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru" dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <p> <img src='logo-html.jpg' alt='Logo' /><h2>This is HTML version</h2>
</p> </body> </html>
|
|