Mit session_start() wird die Sitzung am Beginn der Seite eingeleitet und damit steht die Session für die Speicherung von Informationen zur Verfügung. Es gibt dabei zwei Situationen, nämlich die Speicherung aktueller Daten sowie die Abfrage, ob solche Daten schon gespeichert wurden.
Um die Sitzung richtig zu verstehen und den Sinn von Sessionverwaltungen erkennen zu können, überlegen wir uns folgende Situation. Auf einer Webseite gibt es die normale Webseite und einen Bereich, der nur über ein Login erreicht werden kann. Das kann ein Kundenkonto mit Informationen über Bestellungen sein, das kann ein Mitgliedskonto mit den Daten der letzten Aktivitäten sein.
Webhosting mit viel Software bei Alfahosting (Affiliate-Link)
Damit das System der Seite weiß, ob man eingeloggt ist und diese Kontodaten sehen darf oder nicht, braucht es die Information, ob man sich eingeloggt hat. Beim Einloggen wird überprüft, ob die Zugangsdaten stimmen und wenn ja, wird eine entsprechende Sessionvariable angelegt, die man später, beispielsweise auf anderen Unterseiten, abfragen kann.
Warum ist das wichtig? Weil durch die Sessionverwaltung die Möglichkeit besteht, dass man die Kontenseiten verlässt, sich die allgemeine Webseite anschaut (zum Beispiel Produktseiten) und dennoch jederzeit wieder in das Mitgliedskonto zurückkehren kann, ohne sich nochmals einloggen zu müssen. Damit das funktionieren kann, muss auf jeder Seite mit session_start() die Sitzungsverwaltung aktiviert werden.
Gehen wir nun davon aus, dass sich ein Besucher einloggt und die Zugangsdaten stimmen. Gehen wir weiters davon aus, dass er einen Benutzernamen und ein Passwort eingeben musste. Nach Überprüfung werden zwei Variablen angelegt.
$_SESSION["benutzer"] = $benutzer;
$_SESSION["passwort"] = $passwort;
Webhosting bei Alfahosting - jetzt gratis testen! (Affiliate-Link)
$benutzer und $passwort ergeben sich aufgrund der Verarbeitung des Loginformulares. Mit den beiden Befehlen wird im Rahmen der Session jeweils eine Variable angelegt und mit den Daten der angeführten Variablen gefüllt.
Wenn der Besucher nun die Seite wechselt, weiß das System noch nicht, ob er schon eingeloggt ist oder nicht. Daher wird eine Abfrage gestartet, die simpel mit if bewerkstelligt wird.
if($_SESSION["benutzer"] != "" && $_SESSION["passwort"] != "") {
Damit erzeugt man eine Abfrage, die nur dann wahr ist, wenn sowohl für Benutzer als auch für Passwort eine Sessionvariable angelegt wurde. Das passiert nur, wenn beim Login die Daten überprüft wurden und daher kann man sich darauf verlassen, dass die Daten stimmen.
Das Thema PHP + Array ist eines, das man oft brauchen wird, wenn man mit PHP programmieren möchte. In einem Array können auch komplexere Datenstrukturen gespeichert werden, aber die Abfrage ist manchmal etwas irritierend. Man legt mit dem Befehl array ein solches Array an, mit dem Key kann man abfragen, mit unset löschen und mit list und array_walk Abfragen durchführen.
Ein anderes Thema ist die Session. PHP + Session ermöglicht die Abfrage des Besuchers bei Sitzungsverwaltungen wie etwa einem Mitgliederbereich und man kann seitenübergreifend Daten rund um den Besucher wie die eingetragenen Zugangsdaten verwalten.
Themenseiten
Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen
Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel