Session verschwindet sporadisch

Methos

Erfahrenes Mitglied
Hallo,
hier gleich mal die einzelnen Seiten:

(Seite1)Formular übergibt via POST die Suchanfrage an die nächste Seite

(Seite2)Hier wird die session erstellt:
$_SESSION["suche"] = $HTTP_POST_VARS['suche'];

(Seite3)auf der nächsten Seite wird die Session wieder ausgegeben als info:
$suche = $_SESSION["suche"];
echo $suche;

usw.

wenn man dann wieder zurück klickt, wird die session dazu verwendet die gleichen Ergebnisse noch einmal aufgelistet zu bekommen. Also quasi der gleiche Inhalt wie auf (Seite2) Nur das die SQL Abfrage mit der session gemacht wird anstatt mit der POST_VAR

$suche = $_SESSION["suche"];

Das klappt eigentlich auch bisher immer wunderbar. Nur stell ich sporadisch fest, das die session scheinbar verschwunden ist.
Denn beim zurückgehn findet er nichts mehr. Woran kann das liegen? Ich konnte den Fehler jetzt leider noch nicht "kontrolliert" reproduzieren.
Nur vielleicht weiß jemand woran es liegen könnte? Wär echt dankbar....
 
mmm...
Weiß jetzt nicht genau was du meinst, aber villeicht:
PHP:
#S2
if (!empty($_POST)) {
    $_POST['suche'] = $_SESSION['suche'];
    $search = $_POST['suche'];
}
else {
    $search = $_SESSION['suche'];
}
#S3
echo $_SESSION['suche']
Also wenn $_POST leer ist, wird $search, bzw. $_SESSION['suche'] auf $_POST['suche'] gesetzt, andernfalls einfach nur $search auf die Session :)
Hoffe das war so gemeint ;)
 
ja so funktionierts schon *g* Nur wie gesagt manchmal ist die Session wenn ich auf den zurück button klicke leer und die SQL Anfrage scheitert dann, weil eben session und POST beide leer sind. Sollte ja eigentlich nie vorkommen.

geleert wird die Session ja auch erst auf der 1. Seite (Suchformular) Das sollte damit aber nichts zu tun haben. Tja wie gesagt ich konnte den Fehler so noch nicht erklärbar reproduzieren. Da es meistens läuft.
hab auch schon ne Nacht drüber geschlafen und mir alles noch einmal angeschaut, aber auch ohne Erfolg :(
 
Komisch, villeicht liegt das ja an deinem Server!
Ich würde mal deinem Provider ne Mail schicken und fragen was der dazu sagt, den eigentlich sollte sowas natürlich nicht vorkommen :)
 
Sessions werden nach einer gewissen Zeit zerstört, wenn sie nicht mehr angefordert werden. Vllt. liegts ja daran. Kann auch sein, dass die Session-Lifetime sehr kurz eingestellt ist.
Ich gehe mal davon aus, dass du in alles Scripts session_start() hast, dass man das als Fehlerquelle ausschließen kann.
 
session_start erfolgt als erstes in der index.php. Wird also immer aufgerufen. Was das zerstören betrifft, so hatte ich gestern mehrere Fenster geöffnet und am nächsten Tag auf den "zurück" Button geklickt und alle hatten die Sessions noch. Das waren ca. 8 Stunden. Also verfallen ist da keine. Wie ihr seht hab ich schon einiges ausprobiert ;)

Provider fragen ist gut, denn das Problem tritt auf nem kleinen Server von mir auf den ich nur so zum testen verwende. Auf dem "Produktiv" Server konnt ichs bis jetzt so noch nicht feststellen. Allerdings teste ich hier eben auch leider nicht so ausgiebig.
Will halt so vermeiden das die Seite wegen nem kleinen Fehler mal nicht erreichbar ist usw. und spiel updates immer erst dann ein wenns wirklich handfest ist ;) bzw. ich versuchs...

Aber bei diesem Problem bin ich etwas ratlos
 
Session-Handling ist eigentlich PHP-Sache, und hat somit nichts mit dem Webserver zu tun. Vieleicht gibts ja einen Bug in der PHP-Version, die du benutzt. Installier mal die neueste, und schau, obs da genauso ist (wenn nicht schon die neueste drauf ist).
 
im moment ist PHP Version 4.3.9-1.dotdeb.3 auf dem TestServer installiert. In der php.ini hab ich zwar schon noch einige Einstellungen gefunden. Allerdings hatte ich hier diesbezüglich nie Veränderungen an den Standard-Einstellungen vorgenommen...
 
Zurück