我已经检查了很多示例代码,但仍在努力使矿山正常工作。我正尝试从我的PHP脚本生成XML输出。从PHP生成XML输出
的login.php
<?php
mysql_connect("localhost", "root", "") or die("cannot connect");
mysql_select_db("ConquestOfLancaster") or die("cannot select DB");
$username = $_REQUEST['username'];
$password = sha1($_REQUEST['password']);
$username = mysql_real_escape_string($username);
$domDoc = new DOMDocument;
$rootElt = $domDoc->createElement('root');
$rootNode = $domDoc->appendChild($rootElt);
$sql = "SELECT user_id, user_name FROM tbl_user WHERE user_name='$username' and user_pass='$password'";
$result = mysql_query($sql);
$count=mysql_num_rows($result);
if($count > 0){
//echo("welcome");
$rootAtr = $domDoc->createAttribute('success');
$rootAtrVal = $domDoc->createTextNode('TRUE');
$rootAtr->AppendChild($rootAtrVal);
$rootElt->AppendChild($rootAtr);
$subElt = $domDoc->createElement('username');
$subNode = $rootNode->appendChild($subElt);
$textNode = $domDoc->createTextNode($username);
$subNode->appendChild($textNode);
echo htmlentities($domDoc->saveXML());
} else{
//echo("not exist");
$rootAtr = $domDoc->createAttribute('success');
$rootAtrVal = $domDoc->createTextNode('FALSE');
$rootAtr->AppendChild($rootAtrVal);
$rootElt->AppendChild($rootAtr);
echo htmlentities($domDoc->saveXML());
}
?>
和浏览器的输出是
<?xml version="1.0"?> <root success="TRUE"><username>user1</username></root>
我的主要问题是,与此PHP交互我的iOS应用程序无法解析这个结果。我做错了什么?
,这是非常错误的第一件事就是用depricated mysql_ *命令集。使用PDO或mysqli –
这会改变XML生成的方式吗?我的意思是从我这边来看是一个重要的错误? – OutOfBoundsException
不会更改xml,但在新代码中使用过时的不受支持的技术是个不错的主意。 http://ca1.php.net/manual/en/function.mysql-connect.php –