Affenformular
Als Affenformular wird ein Programmieransatz der HTML-Formularverarbeitung von Internetseiten bezeichnet. Hierbei befinden sich das HTML-Formular und die Gültigkeitsabfrage innerhalb eines Skriptes und das Formular ruft sich daher beim Absenden immer wieder selbst auf, solange ungültige Daten eingegeben werden.Die Bezeichnung Affenformular verweist darauf, dass selbst der millionenfache Aufruf des Formulars durch eine Million Affen nichts bewirken wird.
thumb|380px|right|Struktureller_Aufbau_eines_Affenformulars
__TOC__
Ansatz
Beim Programmieransatz für ein Affenformular wird üblicherweise ein serverseitiges PHP- oder Perl-Skript verwendet, das sich am Anfang der Datei befindet und über das Common Gateway Interface die eingegebenen Daten empfängt, auf gültige Eingaben überprüft und bei Fehleingaben gegebenenfalls das Formular erneut anzeigt. Dabei werden die Formularfelder mit den bereits zuvor eingegebenen Daten vorbelegt und der Nutzer kann seine Eingaben korrigieren oder ergänzen.
Technische Umsetzung
* Der erste Schritt ist die Erstellung eines HTML-Formulars.
* Im zweiten Schritt wird mit Hilfe der verwendeten serverseitigen Programmiersprache dafür gesorgt, dass das Formular vom Browser immer an ?sich selbst? (also die ursprünglich aufgerufene URL) gesendet wird. Üblicherweise wird dazu entweder der eigene Name des Skriptes oder die Umgebungsvariable, die den Namen der Seite enthält in das
action-Attribut des form-Tags eingetragen.* Schritt drei sorgt dann dafür, dass alle Formulareingaben beim Absenden des Formulars als Vorbelegung der Formularfelder in der erneuten Ausgabe unverändert wieder erscheinen.
* Ein Formular in diesem Zustand wird als Affenformular bezeichnet und kann im vierten Schritt als Grundlage für die weitere Programmierung verwendet werden. Beispielsweise kann eine Prüfung der Formularwerte ergänzt werden, um bei fehlerfreier Dateneingabe zur Datenverarbeitung und -speicherung zu verzweigen ? andernfalls aber wieder das Formular mit einem entsprechendem Fehlertext anzuzeigen.
Beispiel
Nachfolgendes einfaches Beispiel eines Affenformulars zeigt die notwendigen Codeschnipsel in HTML und PHP, die sich in der Regel innerhalb eines Skriptes befinden.
= HTML-Code
== PHP-Code
=
if(empty($_POST['textfeld']))
{
$fehler = 1;
}
else
{
header("Location: $redirect_url");
exit;
}
Weblinks
• Affenformular in PHP
• Affenformular in Perl

