ホームページ  >  記事  >  バックエンド開発  >  初心者として、PHPでデータベースからデータを取得した後、XMLファイルに記入する方法について質問したいと思います。

初心者として、PHPでデータベースからデータを取得した後、XMLファイルに記入する方法について質問したいと思います。

WBOY
WBOYオリジナル
2016-06-13 13:25:451031ブラウズ

初心者は、PHP がデータベースからデータを取得した後、XML ファイルに記入する方法について質問したいと思います。
要件:
ユーザー ID を知っており、ユーザー ID に基づいてユーザーの関連情報をクエリします。バックグラウンド SQL ステートメントが作成され、ロジック層にデータがノードを介して XML に入力され、そのデータが前の JS コードを通じて取得されます。ロジック層の何が問題なのかを見つけるのを手伝ってください。私が書いたコード

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->// 引用数据库处理文件
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";
        }
    }
}
   


-----解決策---------------- ----
PHPとXML間の相互変換カプセル化機能:xmlparse.php
PHPコード

include(dirname(__FILE__)."/xmlparse.php");
$listtags =explode(" ","2 名前");
$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");
$contXML をエコーし​​ます。
#ソースコード
#<?xml バージョン="1.0" エンコーディング="utf-8"?>
#<xml>
# <0>1</0>
# <name>SOM</name>
#  管理者 1>
# <2>100</2>
#<3>
# <name>TOM</name>
# <0>リリー</0>
# </3>
#</xml><div class="clear"></div></xml>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。