Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 Markdown to HTML
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog‑Verzeichnis

Partner
 Sprüche Treff

Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
https://www.Artfiles.de
Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
https://www.Hosterplus.de
 
 
 

[Tutorial] So prüft und verarbeitet man Usereingaben / Affenformular

Sie befinden sich: Home > Webmaster News


Es gibt viele Anwendungsfälle, bei denen wir den Besucher unserer Seite auffordern, in ein Formular einzugeben, und bei denen diese Daten dann irgendwie weiterverarbeitet werden sollen.

Beispiel: 
Auf einer Kontaktseite soll der Besucher uns etwas mitteilen und seine Emailadresse angeben, damit wir antworten können. Wir müssen hier prüfen, ob eine syntaktisch gültige Adresse und eine nachricht eingegeben wurde. Wenn alles richtig ist soll das Script uns eine Email mit der nachricht schicken. Solch ein Script nennt sich auch Formmailer. 

Beispiel:
Ein Besucher unserer Seite soll sich anmelden und dazu seinen Namen, seine Emailadresse und sein Geburtsdatum eingeben. Wir müssen auch hier prüfen, dass die Emailadresse  syntaktisch richtig ist und dass die andren Felder plausible Daten enthalten. 

Wenn alles ok ist speichern wir die Anmeldung in unserer Datenbank.

Die Struktur der Formulareingaben ist immer gleich. Man nennt solch eine Struktur auch "Affenformular":

1) Wir erstellen ein HTML-Formular mit den benötigten Daten und speichern die Datei mit der Dateiendung .php ab. Als Datenübertragungsmethode tragen wir "POST" und als Ziel tragen wir den eigenen Dateinamen ein. Das Formular ruft sich also selbst auf.
2) In eine Zeile ganz oben im Formular schreiben wir die Ausgabe einer PHP-Variable, mit der wir Fehlermeldungen und Eingabeaufforderungen anzeigen: <?php echo $nachricht;?>
3) Ganz nach oben in die Seite, noch vor das <html>-Tag schreiben wir unseren PHP-Code.

Der PHP-Code hat immer folgende Struktur:

a) Wir weisen der Ausgabevariablen $nachricht den Text zu, der angezeigt werden soll, wenn die Seite zum allerersten mal angezeigt wird und schreiben darunter den Code der nur dann ausgeführt werden soll, wenn das Formular abgeschickt wurde. Beim allerersten Aufruf der Seite macht es ja keinen Sinn zu prüfen, ob alle Felder richtig ausgefüllt wird

<?php
$nachricht = "Bitte füllen Sie alle Felder aus und klicken Sie dann auf Absenden";

if(!empty($_POST['Submit'])) {  // Formular wurde abgesandt
  $nachricht = "";
}
?>

Innerhalb der if-Anweisung brauchen wir den ursprünglichen Nachrichtentext nicht mehr. Wir leeren die Variable und speichern Fehlermeldungen dann hinein, wenn Formularfelder nicht oder falsch ausgefüllt wurden. Wenn am Ende aller Prüfungen $nachricht immer noch leer ist, dann kann das Script die Daten weiterverarbeiten.

<?php
$nachricht = "Bitte füllen Sie alle Felder aus und klicken Sie dann auf Absenden";

if(!empty($_POST['Submit'])) {  // Formular wurde abgesandt
  $nachricht = "";
  
  if($_POST['email'] == "") $nachricht.= "Sie haben keine Emailadresse eingegeben.<br>";
  if($_POST['name'] == "")  $nachricht.= "Bitte geben Sie Ihren Namen ein.<br>";

  if($nachricht == "") { 
    // Alles richtig eingegeben, Daten weiterverarbeiten
    // ...
  }
?>


Am Ende der Weiterverarbeitung verzweigt man üblicherweise auf eine andere Seite, auf der dem Besucher der Erfolg der Aktion mitgeteilt wird. Auf dieser Danke-Seite kann man dann auch weitere Informationen darüber ausgeben, was der Besucher als nächstes tun soll (z.B. Emailbestätigung ansehen usw.).

(Autor: WolfgangWolfgang), Eingetragen am 21.06.2008


Schreib ein Kommentar

Name
Mail
Webseite
Kommentar