[Guide] PHP forms - Daten aus eingabefeldern auslesen etc.

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [Guide] PHP forms - Daten aus eingabefeldern auslesen etc.

      So, wieder Sonntag, wieder langeweile also schreib ich mal einen kleinen
      Guide wie man mit PHP daten aus [COLOR="Orange"]Forms[/COLOR] auslesen, und wiedergeben kann.

      Was [COLOR="#ffa500"]Forms[/COLOR] sind sollte eigentlich allgemein bekannt sein, es sind [COLOR="#ffa500"]Eingabefelder[/COLOR]
      die man zum Beispiel bei der [COLOR="#ffa500"]Login/Registration[/COLOR] verwendet. HTML Forms
      sind vollkommen nutzlos ohne PHP, und wie ihr HTML Forms mit PHP
      "verknüpft" werde ich euch in dieser Guide näherbringen.

      Hierfür brauchen wir 2 Dateien - einmal die [COLOR="#ffa500"]Index.php[/COLOR] und zum anderen
      die [COLOR="#ffa500"]willkommen.php[/COLOR]. Beginnen wir mit der Index.php.

      PHP-Quellcode

      1. <html>
      2. <head>
      3. <title> Forms mit PHP auslesen </title>
      4. </head>
      5. <body>
      6. <form action="willkommen.php" method ="POST">
      7. Bitte gebe deinen Namen ein: <input type="text" name="name" /> <br />
      8. <input type="submit" Value="Abschicken" />
      9. </form>
      10. </body>
      11. </html>
      Alles anzeigen


      Wenn der Benutzer nun die [COLOR="#ffa500"]Form[/COLOR] ausfüllt und auf den Button "Abschicken"
      klickt, wird er automatisch zur [COLOR="#ffa500"]willkommen.php[/COLOR] Datei weitergeleitet, und
      wie diese Aussehen soll seht ihr im folgenden Script.

      PHP-Quellcode

      1. <?php
      2. $name = $_POST['name'];
      3. echo 'Willkommen '.$name.'!';
      4. ?>


      Es ist wichtig das in der [COLOR="#ffa500"]Index.php[/COLOR] bei [COLOR="#ffa500"]method=""[/COLOR] [COLOR="#ffa500"]Post[/COLOR] zwischen den
      Hochkommas verwendet wird, sonst funktioniert der ganze scheiß nicht.

      In der zweiten Zeile wird die Eingabe in das Feld mit dem Namen [COLOR="#ffa500"]"name"[/COLOR]
      in eine [COLOR="#ffa500"]Variable ($name)[/COLOR] umgewandelt, und in der vierten Zeile wird dies
      durch echo wiedergegeben.
      Wenn ihr also "felix" eingegeben habt erscheint nun in eurem Browser
      [COLOR="#ffa500"]"Willkommen Felix!"[/COLOR]
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • Evtl. solltest du die Verwaltung in der selbe Datei stattfinden lassen.

      PHP-Quellcode

      1. <?php
      2. if($_POST['submitbutton']){
      3. $name = $_POST['name'];
      4. echo 'Willkommen '.$name.'!';
      5. }
      6. ?>
      7. <html>
      8. <head>
      9. <title> Forms mit PHP auslesen </title>
      10. </head>
      11. <body>
      12. <form action="" method ="POST">
      13. Bitte gebe deinen Namen ein: <input type="text" name="name" /> <br />
      14. <input type="submit" Value="Abschicken" name="submitbutton" />
      15. </form>
      16. </body>
      17. </html>
      Alles anzeigen


      [COLOR="Red"]Sicherheit: Stehen die register_globals auf on, so wird automatisch eine Variable mit dem namen des input types erstellt.
      [/COLOR]

      Quellcode

      1. <input type="text" name="kugelfisch">


      PHP würde nun automatisch eine Variable mit dem namen "$kugelfisch" anlegen. Es ist allerdings ein Sicherheitsrisiko die register_globals einzuschalten.

      Falls ihr die Daten weiterverarbeiten wollt, z.B. in eine Datenbank speichern, denkt daran HTML Tags zu strippen (um XSS zu präventieren) und auch mysql Tags zu escapen um SQL Injections vorzubeugen ;-)


      Lg
      Luna

      Edit:

      Es ist wichtig das in der Index.php bei method="" Post zwischen den
      Hochkommas verwendet wird, sonst funktioniert der ganze scheiß nicht.


      Es ist auch möglich GET als method zu nehmen. Die Argumente werden dann z.B. einfach an die URL angehängt.
    • Lunatic;14543 schrieb:


      Is btw totaler Schwachsinn >.> Sry,
      es ist auch möglich GET als method zu nehmen. Die Argumente werden dann z.B. einfach an die URL angehängt.


      Nope, ist so nicht ganz richtig. Das GET auch dafür verwendet werden kann
      stimmt zwar, aber nicht mit dem oben genannten Beispiel da die zweite Datei
      auch $_POST verwendet.