Probleme beim auslesen von XML

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme beim auslesen von XML

    Hallo,

    ich versuche hier eine XML per Schleife auszuselen, und brauche dazu die Anzahl der Einträge.. und daran scheitert es schon..

    Die XML:
    PHP-Code:
    <posts>
      <
    new_post
      <
    post_id>1</post_id
      <
    post>nachricht 1</post
      </
    new_post>

      <
    new_post
      <
    post_id>2</post_id
      <
    post>nachricht 2</post
      </
    new_post

      <
    new_post
      <
    post_id>3</post_id
      <
    post>nachricht 3</post
      </
    new_post
    </
    posts
    ich lese das per ajax aus und habe die xml dann in der variable xml

    PHP-Code:
    var new_post xml.getElementsByTagName('new_post')[0];
                    
    var 
    anzahl new_post.childNodes.length;
                    
    alert("anzahl: "+anzahl); 
    bei den obigen 3 einträgen "<new_post> " erhalte ich bei "anzahl" 5 angezeigt... wie kann das denn sein ?????
    Zuletzt geändert von BananaJo; 16.10.2010, 19:30.

  • #2
    Zitat von BananaJo Beitrag anzeigen
    bei den obigen 3 einträgen "<new_post> " erhalte ich bei "anzahl" 5 angezeigt... wie kann das denn sein ?????
    Die Anzahl der new_post Elemente ist zwar drei, aber das ist zu dem Zeitpunkt eh schon nicht mehr relevant, weil du schließlich nur die Kindknoten des ersten dieser Elemente betrachtest.

    Und ja, das hat in der Tat fünf davon - zwei sind Elementknoten, und die anderen drei sind Textknoten, die Whitespace enthalten, nämlich die Zeilenumbrüche und Einrückungen.

    Du solltest dich langsam mal mit den Grundlagen des DOM beschäftigen!
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      ja danke schon mal..

      das ich mich etwas mehr mit DOM beschäftigen sollte ist mir klar..

      hast du denn nun auch eine antwort auf meine frage, wie ich die anzahl nun korrekt raus bekomme???

      Kommentar


      • #4
        Du erwartest vermutlich den fertigen Code, anstatt es zu verstehen, sehe ich das richtig?

        Anderenfalls versuch es mal, indem du deinem Fehler korrigierst. Es fängt hiermit an:
        weil du schließlich nur die Kindknoten des ersten dieser Elemente betrachtest.
        Und auch der Rest lässt sich aus wahsagas Posting ableiten.

        Kommentar


        • #5
          ne, ich erwarte keinen fertigen code, sondern brauche nur die anzahl der einträge und weiß nicht wie ich die auslesen soll..

          ich versuche das hier sicher schon seit 3 stunden und hab erlich gesagt kein bock mehr zum 10x die selben seiten bei google dazu zu finden, die mir nicht weiterhelfen..

          wenn ich das obige auf den ersten knoten "posts" anwende, erhalten ich 7, was genau so falsch ist wie "3" die ich brauche...

          ich will jetzt nicht wegen so einer kleinigkeit mich 3 tage durch alle kurse und geheimnisse des DOM durcharbeiten.. ist ja auch verständlich irgendwie.. oder??

          Danke schon mal

          Kommentar


          • #6
            Zitat von BananaJo Beitrag anzeigen
            das ich mich etwas mehr mit DOM beschäftigen sollte ist mir klar..
            Und wann gedenkst du, endlich mal damit anzufangen ...?

            Ist ja nicht die erste Frage hier von dir zu diesem Themenkomplex in der letzten Zeit.

            hast du denn nun auch eine antwort auf meine frage, wie ich die anzahl nun korrekt raus bekomme???
            Hast du die Frage denn überhaupt gestellt gehabt ...?

            Wenn du nur die Anzahl der new_post-Elemente haben willst - dann frage die length-Eigenschaft der NodeList ab, die getElementsByTagName dir liefert, anstatt direkt auf das erste Element zuzugreifen.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              so hab jetzt die antwort:

              PHP-Code:
              var new_post xml.getElementsByTagName('new_post');
              var 
              anzahl new_post.length
              wär doc nciht so schwer das eben zu sagen.. oder????

              Kommentar


              • #8
                Zitat von BananaJo Beitrag anzeigen
                ich versuche das hier sicher schon seit 3 stunden und hab erlich gesagt kein bock mehr zum 10x die selben seiten bei google dazu zu finden, die mir nicht weiterhelfen..
                Dann solltest du dich vielleicht langsam mal bemühen, auch was von dem zu verstehen, was du liest.

                wenn ich das obige auf den ersten knoten "posts" anwende, erhalten ich 7, was genau so falsch ist
                Nein, es ist nicht falsch, sondern vollkommen korrekt.
                Dafür, dass du die falschen Dinge abfragst, kann das DOM nichts.

                ich will jetzt nicht wegen so einer kleinigkeit mich 3 tage durch alle kurse und geheimnisse des DOM durcharbeiten.. ist ja auch verständlich irgendwie.. oder??
                Dass du, trotz mehrerer Fragen dazu in der letzten Zeit, also offensichtlich auch schon längerer Beschäftigung mit der Materie, solche Grundlagen offenbar immer noch nicht verstanden hast, ist mir weniger verständlich.

                wär doc nciht so schwer das eben zu sagen.. oder????
                Hab' ich ja auch gerade eben gemacht.

                Aber selber darauf zu kommen, wäre auch nicht so schwer gewesen - wenn du dir inzwischen mal so viel Grundlagenwissen angeeignet hättest, dass du wenigstens ansatzweise weißt, was du da eigentlich machst.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar

                Lädt...
                X