28. Login Teil 4 (Session)

Sobald eine Session gestartet wurde, können Webentwickler Daten in den Session-Speicher schreiben. Die Variable $_SESSION ist ein Array, in das beliebige Daten geschrieben werden können, einschließlich Strings, Zahlen, Arrays und Objekten (vergleichbar mit der Variablen $_POST).

Die folgende Abbildung beinhaltet ein paar Beispiele. Die Bezeichungen für die Array-Felder ('Wort', 'Ganzzahl', ...) sind frei wählbar.

Abbildung 28.1: Den Session-Speicher mit Daten füllen

Fügen Sie ebenfalls ein paar Session-Daten ein.

Öffnen Sie anschließend die Session-Datei des Unterverzeichnisses 'tmp'. Dort sollten die Daten abgespeichert worden sein.

Verwendung der Session für die Login-Anwendung

Gibt der User die korrekten Anmeldedaten ein, nutzen wir die Variable $_SESSION, um dieses Ereignis festzuhalten.

1. Session-Daten schreiben

Wir schreiben hierfür Daten in das Session-Array. Zum einen halten wir den Umstand fest, dass der Benutzer sich korrekt angemeldet hat und zum anderen wollen wir den Benutzernamen abspeichern (siehe untere Abbildung).

Abbildung 28.2: Session-Daten setzen

2. Session-Daten prüfen

Wir wechseln nun zur Datei welcome.php und ergänzen hier ganz oben in der Datei folgenden Code (siehe untere Abbildung).

Abbildung 28.3: Check, ob die Anmeldung gültig ist

Als erstes müssen wir mit der Funktion session_start() auf die aktuelle Session zugreifen (falls diese zuvor gestartet wurde). Hat sich der Benutzer nicht korrekt angemeldet, wurde das Feld 'logged_in' nicht auf true gesetzt. Es folgt die erzwungene Weiterleitung zurück zur Login-Seite.

Wurde das Feld 'logged_in' jedoch auf true gesetzt, verbleibt der User auf der Willkommens-Seite. Für eine etwas persönlichere Begrüßung geben wir in der Überschrift den Benutzernamen aus (s. untere Abbildung).

Abbildung 28.4: Ausgabe des Benutzernamens

3. Ausloggen - Die Session beenden

Wir wechseln nun zur Datei logout.php und ergänzen hier ganz oben in der Datei folgenden Code (siehe untere Abbildung).

Abbildung 28.5: Die Session löschen

Wir greifen zunächst wieder auf die aktuelle Session zu und leeren anschließend den Session-Speicher.

Abschließend wird die Session-Datei gelöscht.

Dies können Sie überprüfen, in dem Sie unter 'XAMPP' in das Unterverzeichnis 'tmp' schauen. Die Datei wird nach dem Ausloggen gelöscht.