PHP formular

      Das Formular (ist für den User sichtbar)
      Zunächst muss das "Gesicht" es Formulares entstehen. Das Beispielformular, das hier erstellt wird, besteht aus zwei Hauptfeldern. Zum einen aus dem einzeiligen Feld, in das der Besucher seinen Namen eingeben kann und zum anderen das mehrzeilige Feld, in der die Nachricht für den Webmaster kommt.
      Der Code für das „Gesicht“ sieht wie folgt aus:

      Quellcode

      1. <form method="post" action="formular.php">
      2. Ihr Name: <input type="text" name="name" size="20"><br>
      3. Ihre Nachricht: <textarea name="nachricht" rows="1" cols="20"></textarea><br>
      4. <input type="submit" name="Button" value="Abschicken">
      5. </form>


      In dem „Form“-Tag (beginnend mit <form> und endend mit </form>), womit jedes Formular beginnen muss, wird bereits die Datei „formular.php“ durch action angegeben, die nach der Betätigung des „Abschick“-Buttons erfolgt. In den beiden folgenden Zeilen werden zum einen …name="name"… und … name="nachricht"… angegeben. Das ist für die Variablen in der php-Datei wichtig! Nachher nährere Erläterungen
      Nun ist das „Gesicht“ des Formulars fertig. Jetzt kommt es auf die Qualität an. Es muss versendet werden.

      Versenden
      Nach dem Betätigen des Buttons wird die Datei formular.php geöffnet. Darin wird dem Benutzer noch einmal vorgeführt, was er in das Formular eingegeben hat.
      Der Code dafür sieht wie folgt aus

      PHP-Quellcode

      1. <?php
      2. echo "Sie haben folgende Angaben gemacht:<br>";
      3. echo "Ihr Name: $name<br>";
      4. echo "Ihre Nachricht $nachricht";
      5. ?>


      Um eine Erklärung dafür zu geben, brauche ich die Hilfe eines Beispieles:
      Sagen wir der Besucher hat als Name „Der böse Mann“ und als Nachricht „Tolle Seite“ verwendet und den „Abschick“-Button benutzt. Durch den HTML-Code im Formular („<form method="post" action="formular.php">“) wird die Datei „formular.php“ in den Browser geladen. Nun kommen die Variablen, die ich vorhin erwähnt habe, zum Einsatz. Durch „$name“ und „$nachricht“ erscheinen die eingegebenen Texte des Benutzers, wie im Beispiel als Name „Der böse Mann“ und als Nachricht „Tolle Seite“ verwandt wurde.
      Doch diese beiden Codes erfüllen nicht unsere eigentlichen Wünsche des Formulars. Es wurde noch nicht verschickt.Um diese Funktion umzusetzen, brauchen wir den folgenden Code, der ebenfalls in die PHP-Datei eingefügt werden muss!

      PHP-Quellcode

      1. <?php
      2. $empfaenger="name@domain.de";
      3. $betreff = "Feedback";
      4. $nachricht = " $name hat Sie kontaktiert: $nachricht";
      5. mail($empfaenger, $betreff, $nachricht, "FROM: Formular");
      6. ?>


      Dieser Code wird wie gesagt für die Mail, die an deine Adresse gehen soll, benötigt. In der zweiten Zeile musst du deine E-Mail Adresse eintragen, darunter in dritter Zeile muss der Betreff, hier natürlich schon eingefügt, erscheinen Die Nachricht mit dem Namen des Benutzers des Formulares (siehe folgende Zeile) wird wieder durch Variablen automatisch eingefügt. Wie im Beispiel erwähnt, würde dann die E-Mail an sie wie folgt aussehen:
      Empfänger: name@domain.de
      Betreff: Feedback

      Der böse Mann hat sie kontaktiert: Tolle Seite

      Fertig
      Hier sind nun alle Codes noch einmal aufgeführt.
      Das Gesicht (z.B. kann die Datei „face.htm“ genannt werden)

      [/code]
      <form method="post" action="formular.php">
      Ihr Name: <input type="text" name="name" size="20"><br>
      Ihre Nachricht: <textarea name="nachricht" rows="1" cols="20"></textarea><br>
      <input type="submit" name="Button" value="Abschicken">
      </form>
      [/code]

      Die Eingabe und der E-Mailversand (wichtig: muss „formular.php“ heißen)

      PHP-Quellcode

      1. <?PHP
      2. echo "Sie haben folgende Angaben gemacht:<br>";
      3. echo "Ihr Name: $name<br>";
      4. echo "Ihre Nachricht $nachricht";
      5. ?>
      6. <?php
      7. $empfaenger="name@domain.de";
      8. $betreff = "Feedback";
      9. $nachricht = " $name hat Sie kontaktiert: $nachricht";
      10. mail($empfaenger, $betreff, $nachricht, "FROM: Formular");
      11. ?>


      Das war es nun. Ich hoffe du kommst mit meiner Beschreibung zurecht, bekommst ein funktionelles Formular und hast etwas gelernt.
      Viel Spaß!

      (c) by nobody



      Könnt ihr mir sagen, was ihr schlecht, gut findet oder was sogar falsch ist?
      MFG nobody

      Click the button to visit my online portofolio!

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „trefixxx“ ()

      Ich habe zu PHP Formularen eine Frage:
      <input type="submit" name="Button" value="Abschicken">

      ich möchte neben Abesenden noch ein Button mit Vorschau. Klickt man darauf gelangt man erst zur Vorschau.

      Was muss ich bei dem Button angeben wenn ich einen Vorschau button haben möchte?

      <input type="submit" name="Button1" value="Vorschau">
      GoHome! Arbeitszeitüberwachung! (@iOS AppStore)
      Reminder, Worktime, Arbeitszeit, Arbeit, Ueberwachung, Zeiten, Zeitenstempeln
      :dafür:
      <input type="submit" name="Button1" value="Vorschau">
      klappt aber nicht weil er dann trotzdem die seite ***.php?action=insert öffnet und alles einträgt. :D

      Schnelle Antwort ist ein Hack den es auf mywbb gibt. Such mal auf mywbb mit dem Begriff Quickreply und lade dir die Version 1.5 runter.
      GoHome! Arbeitszeitüberwachung! (@iOS AppStore)
      Reminder, Worktime, Arbeitszeit, Arbeit, Ueberwachung, Zeiten, Zeitenstempeln
      :dafür:
      nach ein paar Jahren nochmal btt :

      Mal davon abgesehen das deine Variablen "falsch" sind wird deine variante so net funktionieren
      1) Die variablen müssten $_POST["Button1oderwieauchimmer"] heißen
      2)Deine If abfrage ist sinnlos ^^
      Schon wenn du einen der beiden buttons drückst wird er auf die empfagsphp gehen. Ergo :
      Deine action & button variable können nicht beide gesetzt sein , oder :D
      greetings,
      Moritz

      Follow me on twitter !
      Najo bin ein bisschen anderer Meinung. Ich würd nie direkt auf ein superglobal Array zugreifen und es immer zuerst überprüfen und danach in eine andere Variable speichern. Ok damals war register_globals off noch normal, da hatt es auch direkt so funktioniert ;)

      Außerdem würd ich die Abfrage sogar noch genauer machen und nicht einfach nur ein else hinschreiben. Gerade durch ungenaue Abfragen lassen sich öfters Attacken auf die Logik einer Applikation machen.
      Write this on my gravestone, write this right on my grave, "To whisky and women, here lies a poor slave".



      Computer- und Mediensicherheit - FH Hagenberg
      Hagenberger Kreis zur Förderung der digitalen Sicherheit
      Security Forum
      Original von kickedINtheHEAD
      Ok damals war register_globals off noch normal, da hatt es auch direkt so funktioniert ;)

      Ich bin altmodisch .. ich hab register_globals noch immer off
      aber ich schreib auch größtenteils meine eigenen hp scripts und versuche das immer so hinzubekommen
      Original von kickedINtheHEAD
      Außerdem würd ich die Abfrage sogar noch genauer machen und nicht einfach nur ein else hinschreiben. Gerade durch ungenaue Abfragen lassen sich öfters Attacken auf die Logik einer Applikation machen.


      ja klar .. war ja nur eine verbesserung . Wollte nur klarmachen das die if abfrage sinnlos ist, so wie sie da oben steht :tongue:
      greetings,
      Moritz

      Follow me on twitter !

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Futjikato“ ()