Sessions II PDF Drucken
Eine kurze Einführung in Sessions Variablen über mehrere Seiten hinweg verwenden - der Session-Befehl macht 's möglich!

Oberste Voraussetzung um Session-Befehle korrekt auszuführen ist, dass der Provider a) PHP und b) das speichern von Sessions auf dem Server überhaupt erlaubt.

Wird der Session-Befehl unterstützt jedoch nicht das direkte speichern von Sessions bzw. Session-Cookies, so kann man in seinem eigenen Server-Ordner einen Ordner erstellen, in dem Sessions und / oder Session-Cookies gespeichert werden.
Falls das oben genannte Session-Problem auftritt, sollte man die folgenden PHP-Session-Befehle um einen Befehl erweitern:
Code
0:
1:
2:
3:
4:
5:

<?php 
session_start
(); 
session_register("name"); 
?> 

entspricht dann:
Code
0:
1:
2:
3:
4:
5:
6:

<?php 
session_save_path
("./save"); 
session_start(); 
session_register("name"); 
?> 

Der Ordner der für die Sessions benutzt wird lautet hier "./save" ("./"=in diesem Ordner), dieser muss auch existieren !!!



Wir gehen jetzt mal von einem Login-Formular aus, in welchem der User seinen Namen eingeben muss. Unser Ziel ist es, dass auf jeder der folgenden Seiten der eingegebene Name aufgelistet ist !

index.php:

Das Login-Formular sieht so aus:
Code
0:
1:
2:
3:
4:
5:

<form method="GET" action="main.php"> 
<p><input type="text" name="name" size="20"></p> 
<p><input type="submit" value="Abschicken" name="B1"><input type="reset" value="Zurücksetzen" name="B2"></p> 
</form> 

main.php:

Folgender PHP-Code muss unbedingt am Anfang der Seite eingefügt werden:
Code
0:
1:
2:
3:
4:
5:
6:

<?php 
session_save_path
("./save"); 
session_start(); 
session_register("name"); 
?> 

Um sich den eingegebenen Namen ausgeben zu lassen, fügen wir noch folgenden HTML- / PHP-Code im
Code
0:
<body>
-Bereich ein:
Code
0:
1:
2:
3:

<p>Im Formular wurde <b><?php echo $name ?></b> eingegeben!!</p> 
<p><a href="main2.php">nächste Ebene</a></p> 

Der PHP-Code
Code
0:
<?php echo $name ?>
gibt den Namen des Users aus. Das war alles noch keine große Aktion, denn das bisherige kann man auch durch normales "Formular-Handling" erreichen ! Jetzt kommt der spannendste Teil.

main2.php:

Und wieder muss der folgende PHP-Code am Anfang der Page eingefügt werden:
Code
0:
1:
2:
3:
4:

<?php 
session_start
(); 
?> 

Um nun sehen zu können, ob die Variable wirklich "mitgeschleift" wurde, fügen wir folgenden HTML- / PHP-Code im
Code
0:
<body>
-Bereich ein:
Code
0:
1:
2:
3:

<p>PAGE2:------>Im Formular wurde <b><?php echo $name ?></b> eingegeben!!</p> 
<p><a href="main3.php">Logout</a></p> 

main3.php:

Und das sich Niemand in die aktuelle Session "reinhacken" kann, fügen wir folgenden PHP-Code mal wieder am Anfang der Page ein:
Code
0:
1:
2:
3:
4:
5:

<?php 
session_start
(); 
session_unregister("name"); 
?> 

Nun wurde die aktuelle Session sozusagen gelöscht, also unzugänglich gemacht. Zum Schluss fügen wir noch folgenden HTML-Code in die Page ein:
Code
0:
1:
2:

<p>Sie sind jetzt ausgeloggt!!</p> 

F E R T I G

Kleiner Hinweis am Rande noch: Möchte man z. B. auf diese Weise ein Kundenmenü automatisieren, so sollte man nicht vergessen auch auf den Seiten die nicht auf die Variable zugreifen den PHP-Code:
Code
0:
1:
2:
3:
4:

<?php 
session_start
(); 
?> 

einzubauen, denn sonst wird die Variable nicht weiter transportiert !!
» Keine Kommentare
Es gibt bisher noch keine Kommentare.
» Kommentar schreiben
E-Mail (wird nicht veröffentlicht)
Name
Titel
Kommentar
Captcha Image Code neu generieren, falls er unlesbar sein sollte
 
< zurück   weiter >

Suche

WHGB 1.1- Das Gästebuch von Webhilfe
Jetzt downloaden