Hallo zusammen,
ich habe mit meinen Sessions unter PHP 5.0.5 (teste gerade lokal, mit xampp) das Problem, dass (eigentlich gesetzte) Session-Werte direkt bei Seitenaufruf nicht mehr verfügbar sind oder schon wieder gelöscht werden.
Ich habe einen eigenen MySQL-basierten Session-Handler geschrieben, der bis zu dem Zeitpunkt, an dem Werte in die DB geschrieben werden, auch super funktioniert.
Bsp:
ich rufe ein Script mit folgenden Zeilen auf:
session_start();
$_SESSION['login_id'] = 410;
echo session_id(); // für mich als info zum testen
Jetzt (nach erstmaligem Scriptaufruf) sehe ich in der DB auch den entsprechenden Eintrag.
Nun folgendes Script:
session_start();
echo $_SESSION['login_id'];
echo session_id(); // für mich als info zum testen
wirft eine Notice aus, dass der key 'login_id' nicht existiert. Die Session-ID ist aber dieselbe.
Für mich sieht das ganze aus, als wäre da ein GC zu gründlich und würde selbst die Daten dieser noch aktiven Session beim Aufruf von session_start() löschen (aber wirklich nur die Daten - und die Session samt ID weiter existieren lassen).
Kann mir jemand weiterhelfen?
Gruß,
Günther
PS:
Noch ein Bsp (von http://de.php.net/session):
session_start();
if (!isset($_SESSION['zaehler'])) {
$_SESSION['zaehler'] = 0;
} else {
$_SESSION['zaehler']++;
}
echo "<br>" . session_id();
Das Script kann ich sooft aufrufen wie ich will, der Zähler bleibt immer bei 0 und wird nicht erhöht, obwohl die Session-ID gleich bleibt.