Das Ziel dieses Kapitels wird es sein Daten über mehrere Seiten hinweg weiterzugeben - ohne Mithilfe der Parameterübergabe. Aber bevor mit dem Script begonnen wird hier einige Grundlagen über Sessions:

Wie oben schon erwähnt werden Sessions zum weitergeben von Daten welche auf mehreren Seiten verfügbar sein sollen benötigt. Die Daten, welche in einer Session gespeichert sind werden nicht wie Cookies auf dem Rechner des Anwenders abgelegt sondern temporär auf dem Server. Desshalb sind Sessions auch eine sehr sichere Methode Daten wie Passwörter weiterzugeben. Normalerweise beginnt eine Session dann, wenn Sie von PHP Script eingeleitet wird und endet mit dem Schließen des Browsers. Allerdings kann auch eine zeitliche Beschränkung definiert werden, wie lange eine Session gültig sein soll.


WICHTIG: PHPTriad User müssen auf Ihrem C: Laufwerk ein Verzeichnis Namens tmp erstellen! Denn Dort werden dann die Sessions gespeichert, welche normalerweise auf den Server gepeichert werden abgelegt.



Beispiel Nummer 12.1:



Datei: index.php



<form action="test.php" method="POST">
<input type="text" name="name">
<input type="submit">
</form>



Erklärung: Ein normales Formular, welches an die Datei test.php die Variable $name übergibt.



Datei test.php



<?
session_start();
session_register(name);
?>
Du hast <?echo("$name");?> ins das Formular eingegeben.



Erklärung: Mit dem Befehl session_start(); wird eine neue Session gestartet. Dies ist notwendig, weil man eine Session erst dann verwenden kann, wenn sie gestartet ist. Dies kann man in etwa mit einer Flasche Wasser vergleichen. Mann kann erst daraus trinken, wenn sie geöffnet ist. Nach dem starten der Session wird mit dem Befehl session_register(); die Variable $name in die Session gespeichert. Der echo-Befehl gibt diese dann aus. Aber interresant wird die nächste Datei, in der wir die Session wieder aufrufen und dann somit $name wieder verfügbar machen.



Datei test2.php



<?
session_start();
echo("Die Variable \$name ist noch verfügbar! Sieht: $name");
?>



Erklärung: In dieser Datei wird die Session wieder mit session_start(); gestartet. Nach dem Aufrufen dieser Funktion ist die Variable $name wieder verfügbar und wird ausgegeben.



Das war auch schon so ziehmlich alles. Später wenn du mit Datenbanken arbe @),t und ein richtiges Login Script codest kannst du in der Session zusätzlich das Passwort speichern um den Benutzer auf jeder Seite zu idenzifizieren.



Hier als kleiner Überblick die wichtigsten Session funktionen:



session_destroy = Zerstört eine Session
session_name = Definiert den Namen einer Session. Der Rückgabewert ist ebenfalls der Name der Session
session_unregister = Entfernt eine Variable aus einer Session
session_register = Fügt eine Variable zu einer Session hinzu
session_start = Startet eine Session