PHP und Sessions
Variableninhalte speicher - und das für mehr als nur die Dauer eines Skriptes. Das ist wohl knapp zusammengefasst das Einsatzareal von Sessions. Die Technologie braucht man öfters als man zunächst annehmen möchte, da PHP ein vergessliches Kerlchen ist und sicher weigert, Information für mehr als die Anzeigezeit einer Seite zu persistieren.
Funktionsweise von PHP Sessions
Die Persistierung von Daten durch eine PHP Session kann im Allgemeinen auf mehr als eine Art und Weise verwirklicht werden. Die Standardroutine sind Dateien, es ist aber auch eine datenbankbasierte Sessionverwaltung möglich. Wichtig ist nur, dass Sessions mittels einer eindeutigen Kennung/Namen identifiziert werden können.
PHP identifiziert Sessions
Die Identifikation bei PHP Sessions kann auf verschiedenartige Arten erreicht werden.
GET Parameter
In einer URL lassen sich mit dem "?" Paramter anhängen und duch das Ampersand (&) zusammensetzen. Das macht sich PHP dabei zu Nutze, wenn es an die Sessionidentifikation geht. Dabei wird durch eine Konfigurationseinstellung automatisiert bewirkt, dass die Session ID als GET Paramter übergeben wird.
Hidden Fields
In HTML Formularen kann man input-Felder definieren. Diese können den Type "hidden" tragen und sind somit nicht sichtbar für den normalen Benutzer. Diese Felder werden bei der Datenübetragung aber nichtsdestoweniger berücksichtigt und eignen sich somit hervorragend zum Übertragen der Session ID.
Cookies
Die wohl eleganteste Möglichkeit ist die Benutzung von Cookies. Dabei wird automatisch ein Cookie im Browser des Users gesetzt, der die Session ID enthält. Der User bekommt also eigentlich gar nichts davon mit und kann die Session ID auch nicht unabsichtlich weitergeben.
Wo braucht man Sessions?
Die Einsatzgebiete von PHP Sessions sind mannigfach. Das wohl prominenteste Beispiel ist ein Loginsystem, wie man es von jedem Forum, Weblog, usw... kennt.
Umfragen - noch ein Paradebeispiel. Damit sind keine Umfragen gemeint, die nur auf dem Auswählen einer Radiobox basieren (das sind Polls ;)), sondern längere Umfragen, die sich über mehrere HTML Seiten hinweg erstrecken. Dabei kommen gleichfalls PHP Sessions zum Einsatz.
Durch PHP Sessions werden im Regelfall sogenannte Affenformulare realisiert. Bei diesen Formularen geht es darum, dass die eingegebenen Informationen fortbestehen, wenn das Formular abgeschickt wird aber eine Eingabe nicht ganz korrekt war.
Mehr zu Sessions
Es gibt viele sehr gute englische Quellen über Sessions in PHP. Eine der wenigen deutschsprachigen Ressourcen bietet MyWebsolution.de an. Diese Webseite hat sich dem Thema PHP Tutorials PHP lernen verschrieben und nennt einen sehr detaillierten Workshop über PHP Sessions sein eigen.



