Hallo Ich weiß nicht genau in welches Forum das jetzt kommt. Ob Javascript oder doch PHP. Ich dachte mit da der hauptteil mit javascript zu tun hat, kommt es hier rein.
Und zwar ist das Problem: Ich hab ein Loginscript, ich gleiche die Postdaten vom Loginformular mit der Datenbank ab und setze bei richtiger Eingabe eine userid session.
Jetzt arbeite ich mit dem Befehl onunload beim Verlassen oder Neuladen (F5 refresh ) wird eine sjax Funktion aufgerufen, die den User ausloggt.
Diese php Datei, von der sjax funktion aufgerufen, löscht die Sessions und setzt den user in der Datenbank auf offline.
In der Hauptdatei, gucke ich so ob der User eingeloggt ist.
Schließe ich den Tab des Browsers und gehe erneut auf die Seite, siehe da alles funktioniert wie es soll. (Ich weiß das die Sessions automatisch beim schließen des Browsers gelöscht werden..Aber nicht beim Tab)
Drücke ich aber nur F5 und lade die Seite neu, passiert nichts.
Lasse ich mir per print_r($_SESSION) die Session ausgeben ist alles angeblich noch da. Die SQL Abfragen die mit der Session im WHERE Tag arbeiten, funktionieren aber nicht mehr.
Trotzdem die Session wurde erflogreich gelöscht. Der Session-Cookie ist gelöscht und lasse ich mir in einer anderen PHP Datei die Session ausgeben. kommt nur Array()
Sobald ich die Seite dann nocheinmal aktualisiere, kommt auch der text "nicht eingeloggt".
Weiß jemand woran es liegen kann, dass der Browser beim ersten Refresh die Session noch "erkennt" obwohl sie längst gelöscht ist?
Im Internet Explorer muss ich aber sagen, dass alles Funktioniert.
Problem besteht nur beim Firefox 2+3 und Opera macht sich gar nichts aus dem Befehl "onunload"
Danke schonmal im Vorraus. Wenn überhaupt den lange Text liest :P
Und zwar ist das Problem: Ich hab ein Loginscript, ich gleiche die Postdaten vom Loginformular mit der Datenbank ab und setze bei richtiger Eingabe eine userid session.
Jetzt arbeite ich mit dem Befehl onunload beim Verlassen oder Neuladen (F5 refresh ) wird eine sjax Funktion aufgerufen, die den User ausloggt.
Diese php Datei, von der sjax funktion aufgerufen, löscht die Sessions und setzt den user in der Datenbank auf offline.
In der Hauptdatei, gucke ich so ob der User eingeloggt ist.
Code:
if(!isset($_SESSION['uid'])){ exit("nicht eingeloggt"); }
Drücke ich aber nur F5 und lade die Seite neu, passiert nichts.
Lasse ich mir per print_r($_SESSION) die Session ausgeben ist alles angeblich noch da. Die SQL Abfragen die mit der Session im WHERE Tag arbeiten, funktionieren aber nicht mehr.
Trotzdem die Session wurde erflogreich gelöscht. Der Session-Cookie ist gelöscht und lasse ich mir in einer anderen PHP Datei die Session ausgeben. kommt nur Array()
Sobald ich die Seite dann nocheinmal aktualisiere, kommt auch der text "nicht eingeloggt".
Weiß jemand woran es liegen kann, dass der Browser beim ersten Refresh die Session noch "erkennt" obwohl sie längst gelöscht ist?
Im Internet Explorer muss ich aber sagen, dass alles Funktioniert.
Problem besteht nur beim Firefox 2+3 und Opera macht sich gar nichts aus dem Befehl "onunload"
Danke schonmal im Vorraus. Wenn überhaupt den lange Text liest :P
Comment