php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.08.2005, 16:17  
Erfahrener Benutzer
 
Registriert seit: 12.08.2004
Beiträge: 253
socke
Standard Bei Session - verfall

Eine Session dauert ja nur eine gewisse Zeit, solange eben fürs Cookie eingestellt ist.

Gibt es eine möglichtkeit, sobald die Session verfällt automatisch auf dem Server ein skript oder ein paar PHP befehle auszuführen.

Ich habe folgendes Problem:

Habe eine Webseite mit Login system usw. läuft auf session.

Sobald ich mich einlogge, wird eine Spalte namens Login in der Tabelle User bei dem Username auf 1 gesetzt.

Und sobald man den Logout Button, also session destroy, klickt, auf wird wieder die Spalte auf 0 gesetzt.

Wenn man jetzt aber vergisst, auf Logout zu klicken, verfällt zwar nach einiger Zeit die SESSION, aber die MYSQL Spalte login bleibt bei diesem User auf 1, anstatt auf 0
socke ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.08.2005, 16:23  
Matthias959
Gast
 
Beiträge: n/a
Standard

Habe das ganze so gelöst, das ich bei jeder Aktion des Users die aktuelle Zeit als Timestamp in die DB schreibe. Dann einfach den aktuellen Timestamp mit dem in der DB vergleichen uns schon weißt du, ob der user noch aktive ist.
 
Alt 30.08.2005, 16:36  
Erfahrener Benutzer
 
Registriert seit: 12.08.2004
Beiträge: 253
socke
Standard

ja, das wäre auch eine Möglichkeit, habe ich mir auch schon überlegt. würde aber sehr viel Traffic verursachen ...

Deshalb würde ich gern irgendwie eine Alternative suchen ...

Ich könnte auch Cronjobs verwenden:

z.B:
jeden Tag um 00:00 uhr durchführen lassen.
Denn ich habe in der Usertabelle eine spalte das letzte Login Datum + Uhrzeit gespeichert.

Und wenn der User sein letztes Login-uhrzeit mehr als ca. 3 Stunden ist, wird die Spalte auf 0 gesetzt.

kleineres Problem:
wenn sich ein User, sagen wir um 12.15 Uhr einloggt, und dann ab 12.30 die seite verlässt ohne sich abzumelden, dann bleibt er bis 00:00 Uhr als Online angezeigt ...

Ich könnte den Cronjob auch alle 2 - 3 - 4 Stunden aufrufen ...
socke ist offline  
Alt 30.08.2005, 16:51  
Matthias959
Gast
 
Beiträge: n/a
Standard

Also wenn du nicht bei jeder Aktion eines Users etwas ausführst, bleibt dir wohl nur die zweite Möglichkeit.
Und wenn du die Wählst, kannst du da auch direkt ganz drauf verzichten, weil die so ungenau ist. Außerdem gibt es noch das Problem, dass wenn ein User online ist whärend der Crone Job ausgeführt wird, er als offline angezeigt wird.
 
Alt 30.08.2005, 16:58  
Erfahrener Benutzer
 
Registriert seit: 12.08.2004
Beiträge: 253
socke
Standard

nein in meinem Cronjob überprüfe ich ob der User sich vor mehr als 2 Stunden eingeloggt hat, falls ja, setzte ich ihn auf offline
socke ist offline  
Alt 30.08.2005, 18:47  
Clan
Gast
 
Beiträge: n/a
Standard

was mir gerade so einfällt wäre nen versteckstes iframe.

in diesem iframe speicherst du die zeit und refreshed es jede 10 sekunde.
sobald irgend wo ne seite aufgerufen wird, wird geprüft welcher timestamp grösser 1 min ist.
diese accounts verpasste dann nen offline status.
 
Alt 30.08.2005, 18:51  
Gast
 
Beiträge: n/a
Standard

@Clan:
Das funktioniert aber nicht mehr, wenn der User die Seite in der Zwischenzeit geschlossen hat...
 
Alt 30.08.2005, 18:54  
Clan
Gast
 
Beiträge: n/a
Standard

geschlossen = fenster geschlossen?

wenn du das meinen solltest, dann funktioniert es erst recht.
da das frame nicht nachgeladen wird.

nen anderer user, ruft ne andere seite auf, und führt dabei die timestamp kontrolle aus.
 
Alt 30.08.2005, 18:55  
Gast
 
Beiträge: n/a
Standard

Asoo.... sry... stand gerade n bisschen auf meinem Schlauch
 
Alt 30.08.2005, 20:08  
Gast
 
Beiträge: n/a
Standard

braucht aber extrem traffic (resourcen)!!

mfg stego87 :wink:
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Session Problem karina_02 PHP Tipps 2008 6 18.05.2008 22:37
Session Variablen als Referenz!? O_o Sam781 PHP-Fortgeschrittene 4 01.10.2007 11:19
Problem bei session Lifetime Cyberbob_at_tot PHP Tipps 2007 5 05.06.2007 17:47
Session in Session tinchen PHP Tipps 2007 22 21.03.2007 19:53
session nach seitenwechsel leer... GELight PHP Tipps 2006 8 17.09.2006 15:17
session array Timo Trallala PHP Tipps 2006 18 22.04.2006 13:45
Frage zur Anwendung einer Session mehrfach... GELight PHP Tipps 2006 10 12.03.2006 16:47
[Erledigt] php session problem :( PHP Tipps 2005-2 5 21.10.2005 16:37
Session abschaltbar?? Probleme mit Objekten in Session! becks123 PHP-Fortgeschrittene 3 19.09.2005 15:47
Klassenobjekt in ner Session speichern?! Finkman PHP Tipps 2005-2 5 09.08.2005 00:38
Session wird nicht angelegt PHP Tipps 2005-2 7 24.07.2005 13:35
Kreieren einer Session PHP Tipps 2005 11 28.05.2005 15:16
Session error nach Umstellung auf PHP 5 PHP Tipps 2005 15 13.05.2005 14:35
[Erledigt] Formulardaten in einer Session speichern, per Link übergeben PHP Tipps 2004-2 2 29.12.2004 15:47
[Erledigt] Hilfe...PhpBB Session Problem!! PHP Tipps 2004-2 2 15.12.2004 18:28

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php session verfall, session verfall, php session verfallszeit, session verfallszeit php, php session verfällt, session verfallszeit, bplaced session verfallszeit, php verfall session, wann verfällt eine session php, php session verfallen, sessionverfall, session id verfall, verfall einer session, session ohne vefall, session php verfall, session verfällt, session verfallen, session verfallen php, php session ablaufen, php verfallszeit einer session

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:37 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.