Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z parsowaniem XMLa
chomiczek
post
Post #1





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


witam, pobrałem sobie przykład numer 2 z advajax'a (ten gdzie jest dynamiczna tabela), generuje sobie XMLa i o ile pod IE jest ok, to pod FF mam dziwne błedy, pierwszy w firebug'u to:
  1. record[i].childNodes[j].childNodes[0] has no properties
  2. [Break on this error] alert(record[i].childNodes[j].childNodes[0].nodeValue);


idąc dalej i sprawdzając w firebugu record (w watch) otrzymuje dziwne wg. mnie wartości (chodzi o wartości childNodes:
  1. "\n ", idp, "\n ", 6 more...
to fragment, ale chodzi o to, że co druga pozycja to \n, kod to poniżej listingi js i PHP

[html]<script language="javascript" type="text/javascript">
<!-- <![CDATA[
function $(parametr){
return document.getElementById(parametr);
}

function parseRecords(xml) {
startId = 1;

record = xml.getElementsByTagName("producent");
result = "";

for (i = 0; i < record.length; i++) {

for (j = 0; j < 3; j++) {

alert(record[i].childNodes[j].childNodes[0].nodeValue);

} }
return result;
}

function prezzo(p) {

advAJAX.setDefaultParameters({
onSuccess : function(obj) {
alert(obj.responseText);
parseRecords(obj.responseXML);

}
});

advAJAX.get({ url: "edtCat.php", tag: "big" });
}
// ]]> -->
</script>

a kod PHP generujący xmla wygląda tak:
  1. <?php
  2. require_once 'connect.php';
  3. $dom = new DOMDocument("1.0");
  4. $dom->formatOutput = true;
  5. $root = $dom->createElement('producenci');
  6. $dom->appendChild( $root );
  7.  
  8. $pyt = mysql_query("SELECT p.ProducentNazwa, p.ProducentId, k.PartNazwa, k.PartId
  9. FROM Producent as p, part as k
  10. WHERE p.PartId = k.PartId
  11. ORDER BY p.ProducentNazwa
  12. ");
  13.  
  14.  
  15.  
  16. while ($zap = mysql_fetch_array($pyt)) {
  17. $an = $dom->createElement('producent');
  18. $idP = $dom->createElement('idP',$zap[1].'a');
  19. $nazwaP = $dom->createElement('prodNazwa',$zap[0]);
  20. $id = $dom->createElement('id',$zap[3]);
  21. $nazwa = $dom->createElement('nazwa',$zap[2]);
  22. $an->appendChild($idP);
  23. $an->appendChild($nazwaP);
  24. $an->appendChild($id);
  25. $an->appendChild($nazwa);
  26. $root->appendChild( $an );
  27. }
  28.  
  29. header( "Content-type: text/xml" );
  30. echo $dom->saveXML();
  31. ?>


kod wyświetlający jest tutaj:
http://system.promediapc.pl/edtcategory.php
a plik tworzący XMLa tu: http://system.promediapc.pl/edtCat.php

Proszę o pomoc.

Ten post edytował chomiczek 24.02.2007, 11:11:54


--------------------
created by chomiczek
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 15:19