Я пытаюсь выполнить вызов AJAX из javascript в файл PHP, который обновит базу данных, а затем вернется к исходным данным XML-скрипта java-скрипта. Я думаю, что отключение, которое у меня есть, - это корректное получение php для чтения как XML в функции. Посмотрите код, который у меня есть. --- EDIT --- Простой код, чтобы найти суть проблемы.JavaScript AJAX вызывает PHP, который возвращает XML
--ANSWERED-- Файл PHP должен иметь заголовок, заданный как XML.
header ("Content-Type:text/xml");
Java Script:
function AddNewUser(){
document.getElementById("overlay").innerHTML="<span>Started...</span>";
aj_test=new XMLHttpRequest();
aj_test.open("POST","test.php",true);
aj_test.setRequestHeader("Content-type","application/x-www-form-urlencoded");
alert("pre");
aj_test.onreadystatechange=function()
{
if (aj_test.readyState==4 && aj_test.status==200)
{
XMLReturn=aj_test.responseXML;
alert(XMLReturn.getElementsByTagName("title")[0].childNodes[0].nodeValue);
}
}
aj_test.send("");
}
PHP:
$doc = new DOMDocument('1.0');
$doc->formatOutput = true;
$root = $doc->createElement('book');
$root = $doc->appendChild($root);
$title = $doc->createElement('title');
$title = $root->appendChild($title);
$text = $doc->createTextNode('This is the title');
$text = $title->appendChild($text);
echo $doc->saveXML();
Вам необходимо избежать ваших параметров URL. – SLaks
Похоже, что у вас есть все необходимые ингредиенты, поэтому я подозреваю, что вы правы, и проблема связана с тем, как вы передаете XML обратно клиенту javascript. Как вы эхо или испускаете $ XMLData и какие данные фактически получает клиент javascript? –
Обновленный код с простой статической строкой для тестирования. если вы используете responseText; то я получаю всю информацию как правильно сформированную, как XML, но мне нужно, чтобы она передавалась как XML, поэтому я могу найти конкретные данные. – Schugs