index.php から外部関数に飛び、文字列を返してきてindex.
index.php から外部関数に飛び、文字列を返してきてindex.phpで
XML形式で表示するプログラムはどのように書けばいいんでしょうか?
/* ---func1.php--- */
function func1($aa,$bb){
$xml_code = "<func1>\n";
$xml_code .= "<aaa>".$aaa."</aaa>\n";
$xml_code .= "<bbb>".$bbb."</bbb>\n";
$xml_code .= "</func1>\n";
return ($xml_code);
}
/* ---func2.php--- */
function func2($cc,$dd){
//DBからデータを取得して
$sql = "SELECT ccc, ddd, eee, tel FROM tbl_a WHERE id = ".$id;
$moji_db = "";
$result = mysql_query($sql);
while ($row = mysql_fetch_assoc($result)){
$xml_code = "<func2>\n";
$xml_code .= "<ccc>".$row['ccc']."</ccc>\n";
$xml_code .= "<ddd>".$row['ddd']."</ddd>\n";
$xml_code .= "<eee>".$row['eee']."</eee>\n";
$xml_code .= "</func2>\n";
}
return ($xml_code);
}
index.php で
両方の$xml_codeを出力する
以上のようなプログラムなんですけど、
index.phpでのxmlでの表示の仕方がわかりません。
/* ---index.php--- */
<?php
// require
func1.phpとfunc2.php
function xml_make(&$xml ){
// DB 接続
// XML Header生成
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>"."\n";
echo func1();
echo func2();
// XML Footer生成
// DB 切断
}
?>
としてindex.phpを実行するとIEで以下のエラーが出ます。
(firefoxではでません。両ブラウザ共、ソースを表示するとXML形式にはなっていますが・・)
「XML ページを表示できません
XSL スタイル シートを使用した XML 入力は表示できません。
エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。
--------------------------------------------------------------------------------
XML ドキュメント内では最上位の要素に限り、使用できます。
」
それと文字列($xml_code)をSimpleXMLで処理するにはどうしたらいいのでしょう?