php in xml ausgeben

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

  • php in xml ausgeben

    Also zuerstmal, ja ich habe in die dokumentation geschaut, und nein ich bin da absolut nicht schlau draus geworden.
    Kann mir einer n gaaaanz simples beispiel geebn wie ich in ner xml datei phpcode ausgeben kann? Ich möchte nämlcih in einer fertigen xml datei lediglich daten aus einer datenbank ausgeben und niocht die ganze datei mit php erzeugen, aber anscheinend bin ich dafür dann doch zu dumm...

    Es wäre schön wenn mir da jemand helfen könnte...

  • #2
    nicht anders als bei ner html seite ..
    muss nur auf .php enden (oder was immer du eingestellt hast)

    dem parser is nämlisch wurscht was da noch drinsteht,
    hauptsache er hat paar <? ?>

    allerdings weiß ich nicht ob der server das wirklcih als xml verschickt oder nen html content-type dazupackt ..

    aber in der datei an erster stelle müsst ein
    PHP-Code:
    header("Content-Type: text/xml"
    das übrige tun
    mfg,
    [color=#0080c0]Coragon[/color]

    Kommentar


    • #3
      jo danke, ich probiers mal aus und werd dann mal meien erfahrungen diesbezüglich posten.

      Kommentar


      • #4
        So, ich habe es geschafft,
        für diejenigen die es interessiert:

        xml.php
        PHP-Code:
        <? header("Content-Type: text/xml");
        $klammer = "klamm?xml version=\"1.0\"?>";
        $klammer2 = "klamm?xml-stylesheet href=\"test.xsl\" type=\"text/xsl\" ?>";
        $klammer =  str_replace("klamm", "<", $klammer);
        $klammer2 =  str_replace("klamm", "<", $klammer2);
        echo"$klammer\n";
        echo"$klammer2\n";
          echo"<anzeige>\n";
            echo"Hallo XML!\n";
          echo"</anzeige>\n";
        echo"</ausgabe>\n";?>
        test.xsl
        <xsl:stylesheet xmlns:xsl="http://http://www.w3.org/TR/WD-xsl">
        <xsl:template>
        <h2>
        <xsl:value-of select="ausgabe/anzeige"/>
        </h2>
        </xsl:template>
        </xsl:stylesheet>

        Wer das testet wird feststellen das die formatierung in der xsl datei keinerlei effekt zeigt, wer ne idee hat kann sich gerne äußern

        Kommentar


        • #5
          Was soll der ganze "klammer"-Kram aufsich haben?
          Ausserdem ist das XML-Dokument noch nicht mal wellformed, oder seh nur ich kein Root-Element? Bzw. ein schliessender Tag ist da... aber wo ist der öffnende?
          www.traum-projekt.com

          Kommentar


          • #6
            Probiers mal ohne klammer kram, dann bekommst du von PHP ne hübsche kleine Fehlermeldung.

            PHP-Code:
            <? header("Content-Type: text/xml");
            $klammer = "klamm?xml version=\"1.0\"?>";
            $klammer2 = "klamm?xml-stylesheet href=\"test.xsl\" type=\"text/xsl\" ?>";
            $klammer =  str_replace("klamm", "<", $klammer);
            $klammer2 =  str_replace("klamm", "<", $klammer2);
            echo"$klammer\n";
            echo"$klammer2\n";
            echo"<ausgabe>\n";
              echo"<anzeige>\n";
                echo"Hallo XML!\n";
              echo"</anzeige>\n";
            echo"</ausgabe>\n";?>
            Das kommt dann als Quelltext dabei raus.
            <?xml version="1.0"?>
            <?xml-stylesheet href="test.xsl" type="text/xsl" ?>
            <ausgabe>
            <anzeige>
            Hallo XML!
            </anzeige>
            </ausgabe>

            Nur mit der Anzeige haperts, hat nicht irgendjemand was nützliches zu sagen, zum beispiel wi e in daten aus einer adatenbank in mein xml dokument bekomme? *verzweifeln tu*

            P.S.: Können wir uns auf eine Sprache einigen? Entweder alles Deutsch "Wohlgeformt" oder alles englisch "Wellformed" das Mischmasch hört sich Grauenvoll an.

            Kommentar


            • #7
              Original geschrieben von Imion
              Nur mit der Anzeige haperts, hat nicht irgendjemand was nützliches zu sagen, zum beispiel wi e in daten aus einer adatenbank in mein xml dokument bekomme? *verzweifeln tu*
              query machen, mit php ausführen, und dann ins dokument reinschreiben - wo ist da das problem?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                das xml mir gepflegt den mittelfinger zeigt und sich beschwert das da was drinn ist was da nicht hingehört?

                Kommentar


                • #9
                  Original geschrieben von Imion
                  das xml mir gepflegt den mittelfinger zeigt und sich beschwert das da was drinn ist was da nicht hingehört?
                  ja, aber dann hast du doch ein xml-problem und kein problem was das auslesen von DBs angeht.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    ich sagte ja auch das ich n prob mit der xml ausgabe hab.

                    Kommentar


                    • #11
                      Original geschrieben von Imion
                      ich sagte ja auch das ich n prob mit der xml ausgabe hab.
                      nein, du fragtest wie du die db-daten bekommst und nicht wie du sie darstellst.
                      das ist ja wohl ein unterschied.
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        tipp.

                        wenn du <?php für php verwendest und das <? für xml musst du auch nicht den ganzen klammer-radatsch machen.
                        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


                        • #13
                          Kann mir einer n gaaaanz simples beispiel geebn wie ich in ner xml datei phpcode ausgeben kann?
                          Damit fing es an, wie ich es überhaupt mache, um dann als zweiten Schritt daten aus einer datenbank zu bekommen, vieleicht hab ich mich nicht ganz verständlich ausgedrückt. Sorry

                          das mit <?php> hab ich versucht, aber irgendwie will der trotzdem xml draus machen... Ich versuchs aber trotzdem nochmal.

                          Kommentar


                          • #14
                            nur mal so nebenbei:
                            PHP-Code:
                            echo "<?ml"; //mag der php-interpreter nich
                            echo '<?xml'; //mag er sehr wohl
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              Hi Imion!

                              ...wollte mich eigentlich nicht einmischen ... kann das Elend aber nicht mehr sehen.

                              1) Wenn Du PHP mit XML mischt sind alle Vorteile von XML zum Teufel und Du kannst gleich bei HTML bleiben. Deshalb erfolgt die Bearbeitung von XML über API´s

                              2) Wie Abraxax Dir indirekt andeuten wollte, wie Du bereits selbst heraus gefunden hast, stören die <?php den XML-Parser. Deshalb wollte er den Code zwischen <php> und </php> Tags plazieren als XML. Damit im Code aber Zeichen oder Zeichenkombinationen den Parser stören, würde ich den Code noch in base64 verschlüsseln. Aber das willst Du ja doch eigentlich gar nicht haben.

                              3) Eigentlich willst Du Variableninhalt in Tags eines bestehenden XML einführen:

                              PHP-Code:
                              // Z.B. DOM-XML
                                             
                                  // Knoten finden (xpath))

                                      
                              $DomDoc xmldoc($istXML);
                                      
                              $xpath $DomDoc->xpath_new_context();
                                      
                              $expr "//".$suchtag;            // gesuchter Knoten
                                      
                              $xnode xpath_eval($xpath$expr);    
                                      
                              $node =$xnode->nodeset[0];     // erster gefundener 
                              Knoten
                                                             
                              // Werte Anfügen
                                                              
                              $node->set_content($value);

                                                              
                              // Werte überschreiben
                                                              
                              $node->replace_content($value);

                                                             
                              //Kind- Knoten setzen
                                                             
                              $node->add_child("Knotenname");
                                                             
                                                             echo 
                              $DomDoc->dumpmem();

                                                             ... 
                              etc
                              4) Du kannst deine Datenbankabfrage auch direkt in XML ausgeben:
                              http://php.chregu.tv/sql2xml/
                              und dann später einfügen.

                              5) Wenn Du als Azubi immer nur bettelst das Dir einer hilft, ohne die entsprechende Eigeninitiative zu zeigen und dein Grips anzustrengen, wirst Du nix...

                              Es bekommen später nur die cleveren Agilen die Jobs und nicht die bequemen Dummen.

                              Per Aspera ad Astra!
                              (Durch Härte zu den Sternen!)

                              cu

                              Blaster
                              Yuppi, endlich Elite ...

                              Kommentar

                              Lädt...
                              X