evtl. mit javascript. popup (mit sessionid) im hintergrund öffnen, und in einer endlosschleife prüfen, ob der opener noch existiert. wenn nicht, session zerstören.
PopUp finde ich persönlich nicht gut, weil viele Internetbenutzer
Anti-PopUp Programme installiert haben und dieses
dann erst gar nicht aufgebaut wird...?!
Aber ich mach mich mal schlauer in einem JS Forum. Dankeschön
Ich würde eher sagen Javascript verwenden für einen Inaktiv/Aktiv Counter der Session um bildlich dem User zu zeigen das er nach 30 min nach keiner action ausgeloggt wird.
Ansonsten lediglich serverbasiert über 2 Felder login_time und lastaction_time die Differenz dieser Zeitspanne ermitteln und mit der erlaubten Idletime vergleichen.
Wenn die Differenz dann größer ist, einfach den User als ausgeloggt betrachten und bei weniger Serverlast ein Query ausführen was die abgelaufenen Useraccountlogins aus der Table kickt. Oder eben zeitnah je nachdem was sinniger ist.
Die Aktivität der User sprich das erhalten der Session kann dann z.B. mit einer Userverfolgung kombiniert werden
Murphy`s Importanst LAWS
Jede Lösung bringt nur neue Probleme
Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
In jedem kleinen Problem steckt ein großes, das gern raus moechte.
Original geschrieben von Payne_of_Death Ich würde eher sagen Javascript verwenden für einen Inaktiv/Aktiv Counter der Session um bildlich dem User zu zeigen das er nach 30 min nach keiner action ausgeloggt wird.
Ansonsten lediglich serverbasiert über 2 Felder login_time und lastaction_time die Differenz dieser Zeitspanne ermitteln und mit der erlaubten Idletime vergleichen.
Wenn die Differenz dann größer ist, einfach den User als ausgeloggt betrachten und bei weniger Serverlast ein Query ausführen was die abgelaufenen Useraccountlogins aus der Table kickt. Oder eben zeitnah je nachdem was sinniger ist.
Die Aktivität der User sprich das erhalten der Session kann dann z.B. mit einer Userverfolgung kombiniert werden
Dazu hab ich gleich mal ne Frage. Also ich könnte ja die aktuelle Zeit mit der Zeit der letzten Aktion vergleichen. Theoretisch...
Aber wie kann ich das umsetzen? Wie krieg ich den Server dazu, wenn z.b. die Zeitdifferenz > 10min ist, was zu tun? Oder wie bemerkt er es überhaupt? Weil wenn der User das Fenster schließt gibts von der jeweiligen Datei keinen Aufruf mehr?!
Und wie komme ich an diese Zeit der letzten Aktion überhaupt ran?
Dazu hab ich gleich mal ne Frage. Also ich könnte ja die aktuelle Zeit mit der Zeit der letzten Aktion vergleichen. Theoretisch...
theortisch...
Aber wie kann ich das umsetzen? Wie krieg ich den Server dazu, wenn z.b. die Zeitdifferenz > 10min ist, was zu tun?
wenn der server überhaupt was tut (sprich eine seite parst), dann kann er auch mal eben die zeit berechnen oder sonst was machen. aber eben nur dann....
Oder wie bemerkt er es überhaupt? Weil wenn der User das Fenster schließt gibts von der jeweiligen Datei keinen Aufruf mehr?!
Tja, das ist genau das Problem, was im Forum tausen mal erwähnt wurde. Wenn die datei nicht aufgerufen wird, kann auch keine aktion ablaufen.
Ich erwähne in diesem Zusammenhang immer wieder gerne, das HTTP ein zustandsloses Protokoll ist.
Und wie komme ich an diese Zeit der letzten Aktion überhaupt ran?
Naja, z.B. in DB abspeichern... und dort rausholen.
Kommentar