Hello,
Was mich noch interessieren würde: Wann verfällt eine Session von alleine? Wenn ein User sich einmal einloggt und eine Woche später wieder kommt dann ist die Session doch weg oder?
Die Sessionverwaltung von PHP kümmert sich nicht um die Gültigkeit einer Session.
Das musst Du selber programmieren.
PHP als solches kümmert sich nur "gelegentlich" um das Löschen von länger nicht benutzten Sessiondateien, damit die nicht die Platte zumüllen. Die Mindest-nicht-mehr-benutzt-dauer dieser Dateien stellt man mit session.gc_maxlifetime ein und mit den Paramtern
session.gc_divisor 1000 1000
session.gc_probability 1 1
Wenn der GC (Der Müllsammler) richtig eingerichtet ist, räumt er die Dateien weg. Da es aber nur ein PHP auf einem Server gibt, räumt er die Dateien aller User und Domains auf, die er erreichen kann. Liegen die nun alle in /tmp, und ein User fummelt an den Einstellungen so herum, dass die Lebensdauer nur noch 1 sec beträgt, sind aller Sekunde alle Sessiondateien verschwunden, obwohl die Sessions (der Vorgang als solcher) noch gar nicht beendet sind.
Lege also Deine Sessiondatein als erstes in ein eigenes Verzeichnis. Wenn Du keinen Serverzugang hast, geht das z.B. in einem Domain/.ht_sessions/ Verzeichnis. Allerdings kann es sein, dass der GC das dann nicht mehr aufräumt, zumindest bei älteren PHP-Versionen, da ihm der absolute Pfad zu lang wird.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau