PHP und XML

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

  • PHP und XML

    Ja und was mach ich jetzt falsch?

    Ich weiß, dass ich noch Neuling bin aber kannste mir nicht trotzdem sagen, an was das liegt.

    Habe auch schon dein Link zu den Grundlagen studiert aber komm auf kein grünen Zweig

  • #2
    PHP und XML

    Hi Leute,

    Hab folgendes Problem:

    Ich habe schon in eurem Forum ein paar Stunden gesucht und auch gefunden auch in Google habe ich schon gesucht.

    Überall gibt es Beiträge zu meinem Thema.

    Nur irgendwie blick ich überhaupt nicht wie ich an die Sache herangehen soll.
    Alle Beiträge und Dokus verwirren mich total.

    Und zwar hab ich eine xml Datei, die wie folgt aussieht;

    Code:
    <?xml version="1.0"?>
    <MAIN>
         <TABLE_PROJEKTE>
              <RECORD>
                   <PNR Type= 'Long Ineger'> 1006 </PNR>
                   <PROJEKT Type= 'Text'>
                   berlin
                   </PROJEKT>
              </RECORD>
              <RECORD>
                   <PNR Type= 'Long Ineger'> 6395 </PNR>
                   <PROJEKT Type= 'Text'>
                   test
                   </PROJEKT>
              </RECORD>
         </TABLE_PROJEKTE>
         <TABLE_TATIGKEITEN>
              <RECORD>
                   <ID Type= 'Long Ineger'> 1 </ID>
                   <TATIGK Type= 'Text'>
                   Pause
                   </TATIGK>
              </RECORD>
              <RECORD>
                   <ID Type= 'Long Ineger'> 2 </ID>
                   <TATIGK Type= 'Text'>
                   nix
                   </TATIGK>
              </RECORD>
         </TABLE_TATIGKEITEN>
    </MAIN>
    Und möchte jetzt über php auf die darin stehenden Tabellen zugreifen.

    Also diese Daten auslesen und immoment nur mal anzeigen lassen.

    Nur ich blick immoment überhaupt nicht wie ich das anstellen soll.

    Hab irgendwo was von DOM gehört, und irgendwelche funktionen nur wie ich das alles verwende weiß ich nicht und wende mich deshalb mit großer Hoffnung bei so Spezialisten wie euch ne Antwort zu bekommen.

    Vielleicht kann ja jemand grad mal was posten wie ich die Daten der ersten Tabelle auslesen kann. Das würde mir doch vollkommen genügen.

    Mit freundlichen Grüßen
    Patrick Hennig

    Kommentar


    • #3
      Schau dir den PHP-Output der WAP-Datei an. Das könnte alles mögliche sein, vom Datenbankfehler bis zur falsch eingegebenen URL.

      Kommentar


      • #4
        Mit PHP5 würde das folgendermaßen funktionieren:
        PHP-Code:
        $DOM = new DOMDocument('1.0');
        $DOM->loadXML($MyXML);//alternativ auch $DOM->load('myFile.xml');


        //das xml liegt jetzt im DOM-Tree


        $XPath = new DOMXPath($DOM);
        $Tables $XPath->query('/MAIN/*');//sämtliche direkte Kinder von Main

        //Die oben ausgewählten Kinder durchlaufen
        for($i 0$Tables->length$i++)
        {
          
        $Table Tables->item($i);
          echo 
        $Table->tagName;
          
        //weitere Verarbeitung der einzelnen Knoten hier

        In PHP4 kann man das ähnlich realisieren, allerdings sind die Methodennamen anders (mit Underscores).


        PS: Was ist ein "Ineger"?
        Zuletzt geändert von Nezzar; 16.06.2004, 12:42.
        "Ach was soll's? Dann bau ich mir halt meinen eigenen Vergnügungspark mit Blackjack und Nutten." - Bender

        Kommentar


        • #5
          Vielen Dank

          Wie kann ich denn jetzt genau diese Knoten verarbeiten.

          Kannst de mir noch schnell posten, so dass er die daten mit echo ausgibt?

          Wäre die echt dankbar.

          Ach und "Ineger " ist ein Rechtschreibfehler hab den Code nämlich mit nem Prog erzeugen lassen und deswegen ist auch überall en Rechtschreibfehler heißt natürlich "Long Integer"

          Wäre dir echt dankbar wenn das mit den Knoten mir noch erläutern könntest

          Mfg Patrick Hennig

          Kommentar


          • #6
            Und im php_error.log steht u.U. auch noch was ... du kannst die Seite auch mal mit 'nem Telnet abrufen ... um zusehen was da ankommt ... usw. ...

            Pekka und Ich haben Dir die Lösung für den genannten Fehler geliefert ... Du scheinst aber noch mehr Murks gemacht zu haben ... !
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              @duermer
              unterlasse bitte ein CROSSPOSTING in zukunft!

              *ZUSAMMENFÜHR*
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                Was ist den jetzt los?

                Das sind doch hier 2 total unterschiedliche paar Stiefel.

                Das eine ist was von "PHP und WML" mit MySQL mit WML

                Und das andere was völlig anderes, dass gar nichts mit dem ersten zu tun hat, denn da hab ich ne Frage zu "PHP und XML gestellt" ohne jegliche MySQL Datenbanken und auch nicht für meine wml Sache sondern für eine HTML Sache.

                Bitte darum dies wieder auseinander zu führen

                Kommentar


                • #9
                  Original geschrieben von duermer
                  Bitte darum dies wieder auseinander zu führen
                  check mal , ob die trennung korrekt ist.

                  btw.
                  du solltest dann schonmal einen deutlich unterschiedlicheren subject wählen. dann passiert sowas auch nicht.
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    Alles klar werd ich in zukunft machen

                    Kommentar


                    • #11
                      Original geschrieben von duermer
                      Vielen Dank

                      Wie kann ich denn jetzt genau diese Knoten verarbeiten.

                      Kannst de mir noch schnell posten, so dass er die daten mit echo ausgibt?

                      Mfg Patrick Hennig
                      Das funktioniert nach dem selben Prinzip wie oben schon beschrieben:

                      PHP-Code:
                      $DOM = new DOMDocument('1.0');
                      $DOM->loadXML($MyXML);//alternativ auch $DOM->load('myFile.xml');


                      //das xml liegt jetzt im DOM-Tree


                      $XPath = new DOMXPath($DOM);
                      $Tables $XPath->query('/MAIN/*');//sämtliche direkte Kinder von Main

                      //Die oben ausgewählten Kinder durchlaufen
                      for($i 0$Tables->length$i++)
                      {
                        
                      $Table Tables->item($i);
                        for(
                      $j 0$Table->children->length$j++)
                        {
                          
                      $Record $Table->children->item($j);
                          echo 
                      $Record->firstChild->getAttribute('Type');//gibt @Type von PNR/ID aus
                        
                      }

                      "Ach was soll's? Dann bau ich mir halt meinen eigenen Vergnügungspark mit Blackjack und Nutten." - Bender

                      Kommentar


                      • #12
                        Vielen Dank

                        Cool werd ich probieren.


                        Kannst mir noch sagen, wie ich anstatt den Typ den Text bekomme.

                        Und lieg ich richtig, dass ich dann mit secondchild den nächsten habe hier dann das Feld projekt?

                        Kommentar

                        Lädt...
                        X