Um das gesamte Konzept von Sessions etwas verständlicher zu machen, folgt zum Abschluss noch ein kleines Beispiel. In einem Formular wird der Besucher seinen Namen eingeben können, es wird einen internen Bereich mit mehreren Seiten geben und eine Seite für den Logout.
<form action="login.php" method="post"> Dein Name: <br /> <input type="Text" name="name" /> <input type="Submit" /> </form>
<?php session_start(); //Nicht vergessen $name = $_POST['name']; if(!isset($name) OR empty($name)) { $name = "Gast"; } //Session registrieren $_SESSION['username'] = $name; //Text ausgeben echo "Hallo $name <br /> <a href=\"seite2.php\">Seite 2</a><br /> <a href=\"logout.php\">Logout</a>"; ?>
<?php session_start(); //Ganz wichtig if(!isset($_SESSION['username'])) { die("Bitte erst einloggen"); //Mit die beenden wir den weiteren Scriptablauf } //In $name den Wert der Session speichern $name = $_SESSION['username']; //Text ausgeben echo "Du heißt immer noch: $name <a href=\"logout.php\">Logout</a>"; ?>
<?php session_start(); session_destroy(); echo "Logout erfolgreich"; ?>
Dies ist ein ganz simples Beispiel, zeigt aber gleich die Stärke von Sessions. Bei dem Formular geben wir unseren Namen an, diese Daten werden dann an login.php gesendet. Dort werden sie abgefragt und der name aus dem Formular wird in der Session username gespeichert. Wenn wir dann auf den Link klicken und auf seite2.php gelangen, so können wir dort weiter den Namen des Besuchers (der Name aus dem Formular) ausgeben. Dies könnte man über beliebig viele Seiten weiterführen, mit unbegrenzt vielen Session-Variablen.