我想從SQL查詢中創建XML文件。但我的問題是,它未能每一次......這是我的代碼:從SQL查詢中創建XML文件
$stln = $database->query('SELECT name FROM `wp_all_import_xml` GROUP BY name');
$dom = new DOMDocument('1.0', 'utf-8');
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
while($row = $stln->fetch_row()){
$product = $dom->createElement('product');
$title = $dom->createElement('title');
$title->nodeValue = $row["name"][0];
$product->appendChild($title);
$dom->appendChild($product);
}
$dom->save('httpdocs/cronjob/data/cronjob.xml');
的cronjob.xml文件應該是這樣的結尾:
<product>
<title>iPhone 7</title>
</product>
<product>
<title>iPhone 6</title>
</product>
<product>
<title>iPhone 5</title>
</product>
但每次我結束時間了它看起來像這樣一個空的XML文件:
<?xml version="1.0" encoding="utf-8"?>
而且我的瀏覽器是通過調用cronjob.xml文件告訴我:
此頁面包含以下錯誤:
第5行第1列出現錯誤:文檔末尾的額外內容 下面是頁面渲染到第一個錯誤。
有誰知道我的錯誤在哪裏以及我如何修復它?
更新: XML文件被正確創建。我看到了標題。但是還有另外一個問題......就是說我得到這樣的錯誤:
PHP Warning: main(): unterminated entity reference Evil in /Users/spacer/Desktop/spacer/Test/spiel.php on line 21
PHP Warning: main(): unterminated entity reference Scenario Pack in /Users/spacer/Desktop/spacer/Test/spiel.php on line 21
PHP Warning: main(): unterminated entity reference Conquer The Ultimate Collection in /Users/spacer/Desktop/spacer/Test/spiel.php on line 21
PHP Warning: main(): unterminated entity reference Mystics in /Users/spacer/Desktop/spacer/Test/spiel.php on line 21
例如,發生這種情況的名稱是這樣的名稱:Csx Nre 3Gs 21B Genset & New Haven Fl9 Twin Pack
。但我不知道,他爲什麼不能處理這個名字。
有什麼想法嗎?
問候和謝謝你!
XML可能不像你的榜樣,它不是一個有效的XML(超過1種元素)。 –
所以我被迫改變? –
您需要檢查是否確實在提取產品。我不能確定,因爲缺少太多的代碼,但很可能您的XML不包含任何產品,因爲您沒有提取任何產品。例如,在某些情況下,您必須先執行()查詢,然後才能獲取結果。 –