Ошибка синтаксического анализа XML при попытке обновить файл XML с помощью сценария PHP и jQuery
Хорошо. Очень надеюсь, что кто-то может помочь мне ответить на следующий вопрос. Поэтому я использую хранилище данных XML для сохранения в проекте на последний год. Вот структура файла XML.
<?xml version="1.0"?>
<!DOCTYPE datastore SYSTEM "datastore.dtd">
<datastore>
<dataset>
<name>Test1</name>
<dataobject>
<userid>001</userid>
<adl1/>
<adl2/>
<adl3/>
<city>London</city>
<county/>
<postcode>SE1 7HS</postcode>
<country>United Kingdom</country>
<amount>300.0</amount>
<date>01/01/2013</date>
</dataobject>
</dataset>
<dataset>
<name>Test2</name>
<dataobject>
<userid>001</userid>
<adl1/>
<adl2/>
<adl3/>
<city>Tunbridge Wells</city>
<county>Kent</county>
<postcode>TN1 2GE</postcode>
<country>United Kingdom</country>
<amount>20</amount>
<date>01/07/2013</date>
</dataobject>
</dataset></datastore>
Одна из вещей, которую я хочу, чтобы пользователь мог сделать, это добавить новый набор данных. Достаточно просто. Поэтому я использовал следующую маленькую функцию jQuery и скрипт PHP.
function addDataSetToXML(dataset){
$.ajax({
type:'GET',
url:'/phpScripts/addDataSet.php',
data:{dataset : dataset},
success:function(){
window.alert("Added dataset " + dataset + " to gsdatastore.xml");
},
error:function() {window.alert("Did not work");}
});
}
и вот addDataset.php:
<?php
$name = $_GET[$dataset];
$doc = new DOMDocument();
$xml = "../dataStore/gsdatastore.xml";
$doc->Load($xml);
$doc->formatOutput = true;
$newDataSetElement = $doc->createElement("dataset");
$newNameElement = $doc->createElement("name",$dataset);
$newDataSetElement->appendChild($newNameElement);
$root = $doc->documentElement;
$root->appendChild($newDataSetElement);
$doc->Save($xml);
?>
Я не могу найти никаких ошибок в коде, и когда скрипт запускается, я получаю сообщение об успехе. Я использовал Firebug и, наконец, отследил следующее в ответном сообщении (HTTP GET возвращает сообщение 200 OK, так что он определенно находит скрипт и запускает его).
Ошибка синтаксического анализа XML: элемент не найден Расположение: moz-nullprincipal:{8b768c4c-ef3c-644a-ae97-dd38798b8ba1} Строка № 13, столбец 3:
?> - ^
Кто-нибудь знает, что это значит? Это делает мою голову. Любая помощь с благодарностью.