新手请教一个关于PHP 从数据库取得数据后如何填充到XML文件中

六百万 2012-06-12 11:28:24
需求:
我已知用户ID,根据用户ID查询该用户的相关信息,后台SQL语句已经写好,现在是在逻辑层中通过节点方式将数据填充到XML中,然后再通过前段JS代码取得数据, 麻烦请各位牛牛们帮我看下我写的这个逻辑层代码有什么问题,
// 引用数据库处理文件
require_once "../../DBHandle/DBHandle/DBUser.php";

$lefNav = $_REQUEST ["lefNav"];
$action = $_REQUEST ["action"];
if ($lefNav == "userinfo") {
if (action == "init") {
$userId = $_REQUEST ['user_id'];
$rs = DBUser::getUserInfoByID ( $userId );
if ($rs) {

// 将查询出来的用户信息结果放置到XML中传到前段
$doc = new DOMDocument ( "1.0", "utf-8" );
$doc->appendChild ( $doc->createElement ( "xml" ) );

$userNode = $doc->createElement ( "rs" );

$userId = $doc->createElement ( "userId" );
$userIdTx = $doc->createTextNode($rs[0]);
$userId->appendChild($userIdTx);

$name = $doc->createElement ( "name" );
$nameTx = $doc->createTextNode($rs[1]);
$name->appendChild($nameTx);

$rname = $doc->createElement ( "rname" );
$rnameTx = $doc->createTextNode($rs[2]);
$rname->appendChild($rnameTx);

$gname = $doc->createElement ( "gname" );
$gnameTx = $doc->createTextNode($rs[3]);
$gname->appendChild($gnameTx);

$userNode->appendChild($userId);
$userNode->appendChild($name);
$userNode->appendChild($rname);
$userNode->appendChild($gname);

$doc->documentElement->appendChild($userNode);
echo $doc->saveXML();

} else {
echo "FAIL";
}
}
}
...全文
134 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
六百万 2012-06-12
  • 打赏
  • 举报
回复
我的问题是 麻烦大家帮我看下我写的那段代码有什么问题没,为什么我在JS中娶不到数据;
是我的节点有问题还是后天数据查询方法有问题, if (action == "init") 写错了是
if ($action == "init")
[Quote=引用 2 楼 的回复:]
PHP与XML的相互转换封装函数:xmlparse.php

PHP code

include(dirname(__FILE__)."/xmlparse.php");
$listtags = explode(" ","2 name");
$arr = array(1,"name"=>"SOM","admin",100,array("name"=>"TOM","Lily"));
$c……
[/Quote]
  • 打赏
  • 举报
回复
PHP与XML的相互转换封装函数:xmlparse.php

include(dirname(__FILE__)."/xmlparse.php");
$listtags = explode(" ","2 name");
$arr = array(1,"name"=>"SOM","admin",100,array("name"=>"TOM","Lily"));
$contXML = dump_xml_config($arr, "xml", "utf-8");
//放入文件
//file_put_contents_safe("/path/test.xml",$contXML,"w");
echo $contXML;
#源码
#<?xml version="1.0" encoding="utf-8"?>
#<xml>
# <0>1</0>
# <name>SOM</name>
# <1>admin</1>
# <2>100</2>
# <3>
# <name>TOM</name>
# <0>Lily</0>
# </3>
#</xml>
六百万 2012-06-12
  • 打赏
  • 举报
回复
这个是后台数据查询的方法;
/**
*根据用户序号查询用户基本信息
*/
public static function getUserInfoByID($user_id){
$conection = DBCommon::initSQL();
if ($conection != FALSE) {
$strSQL = "select user.ID,user.Name,user.Password,user.RealName,group.GroupName
from user,`group` where user.ID='$user_id' and group.ID=user.ID";
$rs = mysqli_query($conection, $strSQL);
if ($rs == FALSE || $rs == NULL) {
return 0;
} else {
$result = "";
}
} else {
return 0;
}
DBCommon::terminateSQL();
}
qq120848369 2012-06-12
  • 打赏
  • 举报
回复
哎,程序员悟性太低了。
六百万 2012-06-12
  • 打赏
  • 举报
回复
JS端调用就这段代码,不管怎么搞 都是爆ERROR
Logics/LgUser/LgUser.php这个就是上面发的那个生成XML代码文件路径
function ajaxPage1(lefNav, action, pageIndex, pageCount) {
$.ajax({
type : "POST",
url : "../../Logics/LgUser/LgUser.php",
dataType : "XML",
data : "lefNav=" + lefNav + "&action=" + action
}).done(function(data) {
//若AJAX发送请求成功,则进行数据封装

}).fail(function() {
alert("ERROR!!!!!!!!");
//alert("数据初始化查询失败,请联系系统管理员!");
});

}
qq120848369 2012-06-12
  • 打赏
  • 举报
回复
就这么点代码,你直接执行打印看看XML是不是对的,是对的那就是JS问题。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧