Announcement

Collapse
No announcement yet.

Formulardaten mit PHP in XML-Datei

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Formulardaten mit PHP in XML-Datei

    Hi,

    ich brauch eure Hilfe. Seit Stunden bekomm ich nix auf die Reihe.
    Ich hab ein Formular: Name, Vorname.
    Ich will die Formulardaten (Name, Vorname) mit Hilfe einer Php-Klasse in eine XML-Datei speichern. Wie XML Funktioniert weiß ich, aber ich weiß nicht wie ich etwas in eine XML speichern kann. kann mir jemand helfen???

  • #2
    http://www.google.de/search?sourceid...J_de&q=php+xml

    Wie wäre es mit dem ersten Treffer....
    Christian

    Comment


    • #3
      Ich versteh das alles nicht. das ist doch nur load_file oder? kannst du mir ein quellcode zeigen, in dem einfach nur der Name im Formular über eine Php-klasse in XML geschrieben wird???

      Comment


      • #4
        das ist doch nur load_file oder?
        Hier ein weiteres Tutorial

        http://www.tutorials.de/forum/php-tu...l-und-dom.html
        Christian

        Comment


        • #5
          kannst mir nicht zeigen, wie das geht? aus den Tutorials werd ich nicht schlauer, ich will nur aus nem Formular den Name (z.B. Hans) in XML <name>Hans</name> schreiben, aber ich bekomms nicht hin...

          Comment


          • #6
            Originally posted by www.Donald.com^^ View Post
            (...), aber ich bekomms nicht hin...
            Was versuchst du denn genau? Poste mal den Code, wo es Probleme gibt. Dann können wir uns das anschauen und dir vielleicht sagen, was du falsch machst.
            "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

            Viele Grüße Novi

            Comment


            • #7
              Formular.html:

              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 //EN">
              <html>
              <head>
              <style type="text/css">
              body{background:#330000;
              color:#FFFFCC;}
              </style>
              </head>
              <body>
              <form method="get" action="Ergebnis.php" name="Formular" >
              <table width="510" border="0">
              <colgroup>
              <col width="180">
              <col height="45">
              </colgroup>
              <tr>
              <td align="right">Name: </td>
              <td align="left"> <input type="text" name="name"> </tr>
              <tr>
              <td align="right">Vorname: </td>
              <td align="left"> <input type="text" name="vorname"> </tr>
              <tr>
              <td align="right">Strasse: </td>
              <td align="left"> <input type="text" name="strasse"> </tr>
              <tr>
              <td align="right">Ort: </td>
              <td align="left"> <input type="text" name="ort"> </tr>
              <tr>
              <td align="right">Tel: </td>
              <td align="left"> <input type="text" name="tel"> </tr>

              <tr> <td></td><td><input type="submit" name="" value="Submit"></td></tr>
              </table>
              </form>
              </body>
              </html>
              ----------------------------------------------------------------------------------------
              Daten.xml:

              <?xml version="1.0" encoding="ISO-8859-1" ?>
              <daten>
              <name>Test</name>
              <vorname>Franz</vorname>
              <strasse>Teststrasse</strasse>
              <ort>Testort</ort>
              <tel>0911/123456</tel>
              </daten>
              --------------------------------------------------------------
              Ergebnis.php:

              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 //EN">
              <html>
              <head>
              <style type="text/css">
              body{background:#330000;
              color:#FFFFCC;}
              </style>
              </head>
              <body>
              <?php
              if (file_exists('Daten.xml')) {
              $xml = simplexml_load_file('Daten.xml');
              } else {
              exit('Konnte Datei nicht laden.');
              }
              ?>
              <table width="510" border="0">
              <colgroup>
              <col width="180">
              <col height="45">
              </colgroup>
              <tr>
              <td align="right">Name: </td>
              <td align="left"> <?php echo $xml->name[0]; ?> </tr>
              <tr>
              <td align="right">Vorname: </td>
              <td align="left"> <?php echo $xml->vorname[0]; ?> </tr>
              <tr>
              <td align="right">Strasse: </td>
              <td align="left"> <?php echo $xml->strasse[0]; ?> </tr>
              <tr>
              <td align="right">Ort: </td>
              <td align="left"> <?php echo $xml->ort[0]; ?> </tr>
              <tr>
              <td align="right">Tel: </td>
              <td align="left"> <?php echo $xml->tel[0]; ?> </tr>
              </table>
              </body>
              </html>


              Auslesen kann ich die Daten, und anzeigen (hab in der Daten.xml die Daten selber angelegt). Mein Problem ist jetzt, in der Formular.html: Wie bekomm ich die Daten aus den Textboxen in die Daten.xml ersetzt??? also z.b. Name geb ich Hans ein --> Hans soll in die Daten.xml bei name ersetzt werden, sodass ich beim ausgeben Hans da stehen habe.

              Vielen Dank

              Comment


              • #8
                Hi,

                ich glaube du hast mich falsch verstanden! Du solltest nicht deinen ganzen funktionierenden Code posten, sondern nur die Stelle, wo es nicht funktioniert.

                Bei SimpleXML kannst du die Daten genauso setzten, wie du sie auch ausliest. Anschließend muss du die Änderung natürlich auch wieder in der Datei speichern.
                "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

                Viele Grüße Novi

                Comment


                • #9
                  Exakt das steht in den Tuts.

                  Probier doch mal etwas
                  Christian

                  Comment


                  • #10
                    Wenn ich das Formular abschicke, sollte er eigentlich beim absenden in die xml schreiben, ich weiß nur nicht wie, ich habs jetzt an den Anfang von Ergebnis.php gesetzt, funktioniert aber nicht. Sollte eigentlich den name ersetzten


                    $name=$_GET['name'];
                    $data = simplexml_load_file('Daten.xml');
                    $data ->name[0]=$name;

                    Comment


                    • #11
                      ok ich habs jetzt dass es das neue ausgibt. wenn ich im Formular als name nicht Hans schreib, dann zeigs mir beim Ergebnis Hans an. Jetzt bleibt das problem dass es nichts speichert...in der datei ändert sich nix?!?!

                      <?php
                      $data = simplexml_load_file('Daten.xml');
                      $data ->name[0]=$_GET['name'];
                      $data ->vorname[0]=$_GET['vorname'];
                      $data ->strasse[0]=$_GET['strasse'];
                      $data ->ort[0]=$_GET['ort'];
                      $data ->tel[0]=$_GET['tel'];
                      ?>
                      <td align="right">Name: </td>
                      <td align="left"> <?php echo $data->name[0]; ?> </tr>

                      muss ich nicht noch speichern??? Es zeigt das richtige an, aber speichert nicht

                      Comment


                      • #12
                        Originally posted by Novi View Post
                        Anschließend muss du die Änderung natürlich auch wieder in der Datei speichern.
                        Du kommst mithilfe der Methode asXML() an den neuen Inhalt der Datei. Diesen musst du dann in die alte Datei schreiben.
                        "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

                        Viele Grüße Novi

                        Comment


                        • #13
                          und wie komm ich mit der Methode asXML() an meine Objekte wie name??? und wie schreib ich das dann da rein?

                          Comment


                          • #14
                            Mir fehlt denk ich mal nur 1 oder 2 Zeilen, in der ich das in die XML-Datei rein geschriebene speicher, weils so wie es jetzt ist nur ausliest und dann verwirft. wie kann ich das jetzt speichern??? Bitte helft mir, ich bekomms nicht raus und brauch es am montag.

                            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 //EN">
                            <html>
                            <head>
                            <style type="text/css">
                            body{background:#2F2114;
                            color:#FFFFCC;}
                            </style>
                            </head>
                            <body>
                            <?php
                            $data = simplexml_load_file('Daten.xml');
                            $data->name[0]=$_GET['name'];
                            $data->vorname[0]=$_GET['vorname'];
                            $data->strasse[0]=$_GET['strasse'];
                            $data->ort[0]=$_GET['ort'];
                            $data->tel[0]=$_GET['tel'];

                            ?>
                            <table width="510" border="0">
                            <colgroup>
                            <col width="180">
                            <col height="45">
                            </colgroup>
                            <tr>
                            <td align="right">Name: </td>
                            <td align="left"> <?php echo $data->name[0]; ?> </tr>
                            <tr>
                            <td align="right">Vorname: </td>
                            <td align="left"> <?php echo $data->vorname[0]; ?> </tr>
                            <tr>
                            <td align="right">Strasse: </td>
                            <td align="left"> <?php echo $data->strasse[0]; ?> </tr>
                            <tr>
                            <td align="right">Ort: </td>
                            <td align="left"> <?php echo $data->ort[0]; ?> </tr>
                            <tr>
                            <td align="right">Tel: </td>
                            <td align="left"> <?php echo $data->tel[0]; ?> </tr>
                            </table>
                            </body>

                            </html>

                            Comment

                            Working...
                            X