Ajax Problem, kann xml object nicht parsen
Philipp
- javascript
Hallo
Sorry dass ich ein neues Thema zu meinem Problem eroeffene aber es scheint im alten Thread unter zu gehen! Ich bekomme nun von meinem CGI Programm ein XML Document als Antwort. Ich versuche nun mit Javascript das XML Doc zu parsen mit folgedem Befehl:
response = http.responseXML.documentElement;
up_since =response.getElementsByTagName('up_since')[0].firstChild.data;
Ich versuche so den Wert von up_since rauszulesen, aber er gibt mit die Meldung aus
Error: response.getElementsByTagName("up_since")[0] has no properties
Source File: http://localhost/BabysteptestXML.htm
Line: 28
Obwohl mein XML Document so ausschaut: <?xml version="1.0"?><engine_status><up_since>1124357455</up_since><up_duration>16363</up_duration><connected_users>0</connected_users><active_users>0</active_users><allowed_users>1</allowed_users><verification_matrix><tr><td>sr</td><td>kj</td><td>bc</td><td>tg</td><td>pf</td></tr><tr><td>ph</td><td>gt</td><td>cq</td><td>fk</td><td>pk</td></tr><tr><td>hm</td><td>tc</td><td>rj</td><td>ee</td><td>tb</td></tr><tr><td>se</td><td>gs</td><td>fk</td><td>ag</td><td>hg</td></tr></verification_matrix><gateway_address>geldwolf2.trispen.com</gateway_address><company>trispen</company><admin_email></admin_email></engine_status>
Kann ich nicht so wie oben auf das Element zugreifen? Was bedeutet diese Fehlermeldung genau? FInd im Google leider nix hilfreiches!
Gruss
Philipp
Was bedeutet diese Fehlermeldung genau? FInd im Google leider nix hilfreiches!
Achja fast vergessen. Wenn ich folgende Zeile in den Code einfuege:
alert(http.responseXML.documentElement.firstChild.nodeValue);
Erhalte ich als Fehlermeldung: XML Parsing Error: xml processing instruction not at start of external entity
Danke fuer Tips
Philipp
Tag Philipp.
XML Parsing Error: xml processing instruction not at start of external entity
Da _muss_ noch irgendwas vor der XML-Deklaration stehen (wahrscheinlich ein Whitespace). Überprüfe dein Serverscript, denn der Fehler dürfte dort liegen.
Siechfred
Da _muss_ noch irgendwas vor der XML-Deklaration stehen (wahrscheinlich ein Whitespace). Überprüfe dein Serverscript, denn der Fehler dürfte dort liegen.
Siechfred
Das wars, super danke fuer deinen Tip!!
printf("Content-type: text/xml\n\n%s", xmlresponse); und nicht
printf("Content-type: text/xml\n\n %s", xmlresponse);
Da _muss_ noch irgendwas vor der XML-Deklaration stehen (wahrscheinlich ein Whitespace). Überprüfe dein Serverscript, denn der Fehler dürfte dort liegen.
printf("Content-type: text/xml\n\n%s", xmlresponse); und nicht
printf("Content-type: text/xml\n\n %s", xmlresponse);
http sagt \r\n um genau zu sein :-)
printf("Content-type: text/xml\r\n%s", $xmlresponse);
Hi,
printf("Content-type: text/xml\n\n%s", xmlresponse); und nicht
printf("Content-type: text/xml\n\n %s", xmlresponse);
http sagt \r\n um genau zu sein :-)
printf("Content-type: text/xml\r\n%s", $xmlresponse);
Wenn schon, dann \r\n\r\n - denn nach dem letzten Header muß zweimal CR + LF kommen.
In manchen Fällen (abhängig von Programmiersprache/Betriebssystem/...) wird \n aber automatisch zu CR + LF gewandelt.
Besser ist also \x0d\x0a\x0d\x0a (hexadekadisch) bzw. \015\012\015\012 (oktal)
cu,
Andreas