PHP $_POST für die Formularanwendungen

Auslesen der eingegebenen Daten für die Weiterverarbeitung

Als Alternative zum GET-Verfahren, bei dem die übertragenen Werte über die URL von einer Seite zur nächsten geschickt werden, gibt es das POST-Verfahren, mit dem die meisten Formulare arbeiten. Dabei werden die Daten, die in die Formulare eingetragen wurden, als gesamtes Paket verschickt.

Ohne sichtbar zu werden, werden die gesamten Informationen über die Datenfelder intern verschickt und können über das superglobale Array $_POST abgefragt werden. So kann man etwa herausfinden, was Frau Maier im Formular des Gästebuches geschrieben hat und diese Daten als neuen Eintrag in eine MySQLi-Datenbank speichern.

Mit $_POST Formulare per PHP auswerten

<?php
$vorname = $_POST["vorname"];
$plz = $_POST["plz"];
?>

Die Werte von $_POST erhält man in seinen Variablen also auf gleiche Weise wie bei $_GET, wobei dieses Verfahren ohnehin typisch für die superglobalen Arrays ist. Das bedeutet für die Praxis, dass man wissen muss, welche Formularfelder mit welchen Bezeichnungen sind verschickt worden und diese ruft man dann ab, um die Eingaben prüfen zu können.

Wenn also wie oben im Beispiel Postleitzahl bzw. Vorname abgefragt werden, muss es im davor abgeschickten Formular Felder geben, die diese Bezeichnungen getragen haben (zum Beispiel name=plz beim Datenfeld). Damit ist noch keine Aussage gemacht, dass es ein normales Textfeld gewesen sein muss. Es könnte auch ein mehrzeiliges Feld wie ein Textarea gewesen sein oder eine Select-Auswahlliste.

Fakt ist aber, dass mit den gleichen Bezeichnungen aus $_POST die eingetragenen Werte wieder herausgelöst werden. Das Formular schickt die Daten, das Skript, das entweder auf der gleichen Seite eingebaut ist (dann wird die selbe Seite nochmals aufgerufen) oder ein eigenes Dokument darstellt, empfängt die Daten, überträgt sie auf Variablen und arbeitet damit. Es kann sein, dass die Daten, wenn die Überprüfung positiv ausgefallen ist, per E-Mail an den Zuständigen weitergeschickt werden oder die Daten werden in der Datenbank gespeichert - beispielsweise bei einem Kommentar zu einem Artikel.

Es ist natürlich auch möglich, beides durchzuführen - das kommt ganz auf die Wünsche, das Projekt und die Art der Formularanwendung an. Fakt ist, dass man $_POST beherrschen sollte, weil Formulare gibt es bei praktisch jedem Projekt, sei es eine Newsletter-Anmeldung, eine Kommentarfunktion, das Kontaktformular oder ein Gästebuch.

Auch große Datenmengen möglich

Bei $_GET werden Parameter per URL weitergeschickt und zwecks Übersicht und Sinnhaftigkeit eher gering gehalten. Bei $_POST kann es hingegen riesige Mengen - ganze Artikeltexte in einem Feld - geben, die weitergeschickt und später in die Datenbank eingearbeitet werden können. Es ist nur eine kleine Funktion auf den ersten Blick, doch $_POST ist eine der wichtigsten Funktionen neben der Abfragemöglichkeit der Datenbank.

Lesen Sie auch

Superglobale Array ist ein sperriger Begriff, mit dem man am Anfang seiner PHP-Karriere wenig anfangen kann. Aber schon bald wird man quasi täglich damit zu tun haben. Die wichtigsten Vertreter sind zweifelsohne $_GET und $_POST. Mit $_GET werden Werte durch die URL weitergegeben, bei $_POST werden die eingetragenen Formulardaten zur Verfügung gestellt, um sie auszuwerten - einen Kommentareintrag zum Beispiel.

Eine weitere wichtige Funktion ist mit $_SERVER gegeben, womit nicht nur Serverdaten abgefragt werden können, was man aufgrund des Namens hätte vermuten können. Es können auch Besucherdaten oder der verwendete Browser in Erfahrung gebracht werden.

Und dann gibt es noch die Sessionverwaltung mit $_SESSION, um zu überprüfen, ob das Mitglied sich eingeloggt hat. Weitere Lösungen sind mit $_FILES für hochgeladene Dateien und $_COOKIE für die Cookies in Anwendungen gegeben.

Diesen Artikel teilen

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel