Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Programmierung mit PHP  Teil von  Session-Management via PHP
Letztes Update: 04.09.2007 20:49:50

Navigation

Seite Startseite
Seite Aktuelles
Seite Seite News*
Seite Seite Pressemitteilungen*
Seite SELFPHP
Seite Seite Über SELFPHP
Seite Seite Werbung
Seite Seite Kontakt
Seite Seite Unsere Banner
Seite Seite Impressum
Seite Qozido
Seite Seite Diving Edition
Seite Seite Snorkeling Edition
Seite SELFPHP Dokumentation
Seite Seite PHP-Skripte
Seite Seite PHP Befehlsreferenz
Seite Seite PHP 5 Praxisbuch
Seite Seite PHP Code Snippets
Seite Seite SELFPHP in Buchform
Seite Anbieterverzeichnis
Seite Seite Globale Branchen
Seite Seite Webhosting/Server
Seite Services
Seite Seite Forum*
Seite Seite RSS-Feeds*
Seite Seite Downloads*
Seite Seite Gratis-Video-Lektionen*
Seite Seite SELFPHP auf Heft-CD*
Seite Seite Newsletter*
Seite Internet Security
 sponsored by  
Seite Stellenangebote*
Sedo - Bei uns wird PHP großgeschrieben
Seite Premium-Partner   
Webhosting/Serverlösungen
Seite Produktempfehlung   
Seite Seite SteadyBackup

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  
 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 100.000 Beiträgen finden Sie sicher die passende Antwort!*  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!*

Vorname: 
Name:
E-Mail:
 




 

Konfiguration des Session-Moduls




Das Session-Modul von PHP lässt sich über Optionen innerhalb der Konfigurationsdatei php.ini konfigurieren.

Die wichtigsten dieser Optionen und deren Standardeinstellungen sind in der nachfolgenden Tabelle enthalten:

OptionBedeutung
session.save_handler = filesHandle, welches auf das eingesetzte Speichermodul verweist. Bei Standardeinstellung (files) wird das Dateisystem des Servers verwendet. Zusätzliche Einstellungsmöglichkeiten sind: mm (Prozessorspeicher) und user (benutzerdefiniert).
session.save_path = /tmpWerden zum Speichern der Sessiondaten Dateien verwendet, kann deren Pfad angegeben werden.
sessions.use_cookies = 1Zum Speichern der Session-ID werden standardmäßig Cookies verwendet.
session-name = PHPSESSIDName der Session, wird auch als Name des Cookies verwendet.
session.auto_start = 0Startet das Session-Modul bei jedem Request automatisch.
session.cookie_lifetime = 0Lebensdauer der Cookies in Sekunden (0 bedeutet bis zum nächsten Browserstart).
session.cookie_path = /Pfad, für den das Cookie Gültigkeit besitzt.
session.cookie_domain = Domain, für die das Cookie Gültigkeit besitzt.
session.serialize_handler = phpVerweise auf den Serialisierer. Gegenwärtig wird ein internes PHP-Format (php) und WDDX (wddx) unterstützt. WDDX steht nur zur Verfügung, wenn PHP mit WDDX-Support kompiliert wurde.
session.gc_probability = 1Wahrscheinlichkeit (0..1), dass die Routine zum Aufräumen (garbage collection) des Speichers bei jedem Sessionstart gestartet wird.
session.gc_maxlifetime = 1440Zeit in Sekunden, nach der alle Sessiondaten zerstört werden.


Session-ID/PHPSESSID

Die Session-ID (PHPSESSID) ist einer der interessantesten Bestandteile. Sie ist ein zufällig ausgewählter Schlüssel, der die Sessiondaten auf dem Server eindeutig identifiziert. Dieser Schlüssel kann z. B. über Cookies oder als Bestandteil der URL an ein anderes Skript übergeben werden, damit dieses die Sessiondaten auf dem Server wiederfinden kann.


Erzeugen einer eindeutigen Benutzer-ID

Zur Erzeugung einer eindeutigen Benutzer-ID können Sie die Funktion uniqid() einsetzen. Sie erwartet als Argument eine Zeichenfolge, die der ID als Präfix vorangestellt wird.

Beispiel

<?php
echo uniqid("Session");
?>

Ausgabe
Session401804f3d8f96

Sie können natürlich auch andere Zeichenfolgen voranstellen oder darauf verzichten. In diesem Fall ist ein Leerstring als Argument zu übergeben. Diese ID können Sie dann in Hyperlinks oder versteckten Feldern verwenden.

Eine ID lässt sich auch mithilfe eines Zufallszahlengenerators erzeugen. Im Grunde stellt dies jedoch lediglich die Arbeitsweise der Funktion uniqid() dar. Die von der Funktion gelieferte ID basiert auf der aktuellen Zeit in Mikrosekunden. Sie ist damit nur eingeschränkt als »eindeutig« zu bezeichnen. Es empfiehlt sich daher, eine komplexere ID zu bilden, bei der beispielsweise als Argument der uniqid()-Funktion die Zufallszahlenfunktion rand() verwendet wird.

Beispiel

<?php
$u_id = uniqid ("");
$besser_id = uniqid (rand());

echo $u_id . "<br>";
echo $besser_id . "<br>";
?>

Ausgabe
401806dc1432f
19439401806dc14352

Wenn Sie eindeutige IDs benötigen und beabsichtigen, diese über das Internet an den Anwender weiterzuleiten, beispielsweise als Session-Cookies, ist es ratsam, wie folgt vorzugehen:

<?php
$u_id = md5 (uniqid (""));
$besser_id = md5 (uniqid (rand()));

echo $u_id . "<br>";
echo $besser_id . "<br>";
?>

Ausgabe
bf5fce050c14b8bf73aaefd1f87609c8
b31da72fe23ea7f329011da0f4ab4e15

Hierdurch wird eine 32-Zeichen-ID (128-Bit-Hexwert) erzeugt, die nur sehr schwer vorhersehbar ist.


 




 sponsored by

Sedo - Bei uns wird PHP großgeschrieben


VERIO - An NTT Communications Company


HighText iBusiness


Webspace-Verkauf.de


video2brain




 Premium-Partner
 Webhosting/Serverlösungen

BPI-Systeme


Premium-Partner Pixel X


Premium-Partner First Colo


Premium-Partner dogado Internet




Qozido


© 2001-2008 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt