フォーム入力を XML データとしてデータベースに送信する Wordpress で formbuilder プラグインを使用しています。次に、そのデータを取得して、別のページに表示したいと思います。これを達成するために simpleXML を試し始めましたが、今は道のりにぶつかっています。
データベースの各行に表示される XML データは、次の形式に従います。
<form>
<FormSubject>Report</FormSubject>
<FormRecipient>****@***.com</FormRecipient>
<Name>admin</Name>
<Department>test</Department>
<Value>1000</Value>
<Comments>test</Comments>
<Page>http://***.com</Page>
<Referrer>http://****.com</Referrer>
</form>
以前は、データベースにある同じマークアップの XML 文字列から simpleXML を使用して必要なデータを取得できましたが、データベースの各行のループでこれを行うにはどうすればよいですか?
次のコードを実行すると、wordpress はエラーがあることを意味する空白のページを表示します。
<?php
global $wpdb;
$statistics = $wpdb->get_results("SELECT * FROM wpformbuilder_results WHERE form_id = '00000000000000000001';");
echo "<table>";
foreach($statistics as $statistic){
$string = $statistic->xmldata
$xml = simplexml_load_string($string);
$Name = (string) $xml->Name;
$Department = (string) $xml->Department;
$Value = (string) $xml->Value;
$Comments = (string) $xml->Comments;
echo "<tr>";
echo "<td>".$statistic->timestamp."</td>";
echo "<td>".$Name."</td>";
echo "<td>".$Department."</td>";
echo "<td>".$Value."</td>";
echo "<td>".$Comments."</td>";
echo "</tr>";
}
echo "</table>";
?>