Button in ein PHP-Skript einfügen
Kinjust
- php
Hallo,
also ich habe ein Problem.
Ich habe 2 php-Seiten (test.php und senden.php). In der test.php werden Formulareingaben gemacht, die dann mittels Klicken auf den "abschicken" Button an senden.php weitergegeben werden. In der test.php ist auch noch ein Teil HTML drin. Die senden.php, die nur aus einem php-Skript besteht, listet die gemachten Formulareinträge noch einmal auf, bis hierhin klappt alles. Und nun mein Problem:
Jetzt würde ich gerne unter den aufgelisteten Formulareingaben einen Button einfügen mit dem ich dann die Daten per email letztendlich verschicken kann. Allerdings weiss ich nicht wie ich einen Button in ein PHP-Skript einfüge (auch mit <form> und <input>?), der nach dem Anklicken die Daten per email versendet.
Wäre super wenn Ihr mir einer von Euch da weiterhelfen könnte!
Vielen Dank im voraus!
Hallo Kinjust,
Wäre super wenn Ihr mir einer von Euch da weiterhelfen könnte!
Also: Erst einmal musst Du trennen zwischen dem, was in Deinem Sourcecode steht und dem, was der Browser zu Gesicht bekommt.
Jegliches PHP-Script wird - korrekte Konfiguration vorrausgesetzt - auf dem Server verarbeitet. Es wird eine Ausgabe erzeugt, die in den meisten Fällen HTML ist, und diese wird an den Browser gesandt. Jegliche Kommunikation mittels HTTP, dem Protokoll, mit dem das Web arbeitet, ist eine Art Ping-Pong: Der Browser sendet Ping (eine Anfrage) und der Server sendet Pong. (die Antwort darauf)
Wenn Du nun eine Seite hast, die dem Browser ein Formular liefert - wohlgemerkt: es kommt nur darauf an, dass der Browser das Formular zu Gesicht bekommt, ob die Seite per PHP erzeugt wurde oder normales HTML ist, ist dem Browser selbst erst mal egal - wenn Du nun so eine Seite mit Formular hast, dann gibst Du dem Browser die Adresse der Seite mit, die er aufrufen soll, wenn das Formular abgeschickt werden soll. Wenn das Script, das die Formulardaten entgegen nimmt, jetzt diese nochmal ausgibt, dann muss es _außerdem_ noch ein weiteres Formular erzeugen, das beim Abschicken ein weiteres Script aufrufen lässt, das dann wiederrum die Daten verarbeitet. Du willst aber vermutlich nicht, dass dieses Formular die ganzen Felder nochmal zum Bearbeiten anzeigt, daher musst Du die Felder als Hidden-Felder einfügen.
Wenn das Script, das die Formulardaten noch mal anzeigt, außerdem auch noch für die Verarbeitung, also dem Senden einer Mail, zuständig sein soll, dann musst Du diesem Script irgendwie auch mitteilen, welche Aktion es tun soll. Daher solltest Du beim nochmaligen Anzeigen ein weiteres Hidden-Feld hinzufügen, das dem Script selbst zu erkennen gibt: Aha - ich wurde schon mal aufgerufen - jetzt wurde das Formular bestätigt.
Daher sollte Dein Ablauf so aussehen:
senden.php:
wenn (Hidden-Feld gesetzt, das angibt, dass das Formular schon angezeigt worden ist)
-> Mail senden
-> Meldung ausgeben
-> Script beenden
ansonsten:
-> Fomulardaten noch mal ausgeben
-> Fomular als lauter Hidden-Felder noch mal ausgeben
-> Zusätzliches Hidden-Feld, das den Status angibt, ausgeben
Viele Grüße,
Christian