Session Verwaltung

Jede Seitenaufruf wird vom Server einzeln bearbeitet. Anschließend wird die http Verbindung beendet. Will man beipspielsweise einen Shop betreiben, ist es ist es jedoch notwendig, dass der Server die einzelnen Anwendungen des Users verfolgen kann. Dazu gibt es verschiedene Techniken. Session Cookies werden nach Ablauf der Session, also Schließen des Browsers gelöscht.

Versteckte Felder (Client)
URL-Parameter (Client)
Cookies (Client)
Speichern in einer Datei oder einer Datenbank auf dem Server
Nutzung der integrierten PHP-Funktionen zur Session-Verwaltung
Eigenhändige Programmierung der erforderlichen Funktionen

php.ini

session.auto_start = 0 Wenn der Wert auf 0 steht, muß auf der Seite die Session Verwaltung starten.
session.use_cookies = 1 ob Cookies benutzt werden
session.cookie_lifetime = 0 wie lange die Cookies nach Schließen des Browsers bestehen, Wert in Sekunden.
session.save_path = /tmp Die Pfadangabe, wo die Session gespeichert wird, auch ein absoluter Pfad ist möglich z.B.: session.save_path=d:/temp
register_globals=On ob globale Variablen als Session Variablen registriert werden können.

Die Session-ID

session_start Sitzung wird erzeugt
session_destroy Sitzung wird beendet, Sitzungsdaten werden gelöscht
session_name ermittelt oder bestimmt einen Session-Namen. Der Name wird im Cookie gespeichert.
session_id ermittelt oder bestimmt die Session-ID
session_save_path ermittelt oder bestimmt den Pfad, wo die Session-Daten gespeichert werden
session_register Bindet Variablen an eine Sitzung. In diesen Session Variablen können Benutzerdaten etc. der Session auf dem Server gespeichert werden.
session_unregister Hebt die Registrierung der Session Variablen auf
session_is_registered Prüft ob es eine Session Variable gibt
session_unset hebt alle Bindungen von Variablen an eine Sitzung auf
session_get_cookie_params Ermittelt die Parameter eines Cookies
session_set_cookie_params Setzt die Parameter eines Cookies

Wenn in der in php.ini die Session Verwaltung deaktiviert ist,
session.auto_start=0
muss man diese Aktivierung auf der Seite vornehmen. Das Ganze fügt man dann in folgender Struktur auf die Seite ein. Mittels session_start(); wird die Session Verwaltung gestartet.

 

<?php
session_start();
session_register("Zaehler");
?>
<html>
<head>
<title>PHP Tipp Pastor Pixel</title>
</head>
<body>

 

2b444bc8ec95dc349080e8dfd666aac9
2;/var/tmp
<?php
echo session_id();<br>
echo "<br>" ;
echo session_save_path();
?>
Ihr 1. Besuch

<?php
$Zaehler++;
echo "Ihr ",$Zaehler, ". Besuch";
?>

session_register("Zaehler"); definiert eine Variable die die Anzahl der Besuche speichert, siehe unten
$Zaehler++;
echo "ihr",$Zaehler, ".Besuch"; Die Variable wird in Cookies gespeichert, deswegen muß sowohl in der php.ini als auch im Browser cookies aktiviert sein.

Speichern der Session ID

PHP überprüft ob eine Session ID vergeben wurde und überprüft dann, ob eine entsprechende Datei vorliegt, in der gegebenenfalls, die Variablen eingetragen werden. z.B.: Zaehler|i:1; Wenn keine entsprechende Datei vorliegt, wird eine neue angelegt, wobei die Session ID den Dateinamen bestimmt. Es folgt ein Beispiel eines Dateinamens.
sess_51c22bbe361ff0a9d2d16912f13cba30
In der php.ini Datei kann man den Pfad eingeben, wo die Session Dateien gespeichert werden sollen. Nach Änderung muss ein Neustart erfolgen.
session.save_path = d:/temp/phpsession

IP-Adresse

Mit folgendem kleinen Befehl kann man sich die IP-Adresse eines Users anzeigen lassen. Auch das ist eine Möglichkeit einen User eindeutig zu identifizieren.

Ihre IP Adresse lautet: 107.22.127.92 <?php
echo "Ihre IP Adresse lautet: ";
echo $_SERVER['REMOTE_ADDR'];
?>

 

Herkunft des Besuchers und Host kann man auch ermitteln. Dazu folgender Tipp bei webresource

 

cookie


Webdesign / PHP / mySQL / Dreamweaver MX Tipps
Copyright © Michael Albers
www.pastorpixel.de
www.pastorpixel.de PHP mySQL Tipps