If oder CronJob?

Hallo Leute…

Ich möchte jetzt ein Automatisches Logout für meine Seite.
Jetzt gibt es 2 Möglichkeiten
[ul][li]Mit einer if Abfrage bei jedem Benutzer (heist aber das bei jedem Seiten Aufruf eine Datenbankverbindung aufgerufen wird und überprüft wird ob ein Nutzer schon über 20 min interaktiv ist)[/li]
[li]Oder mit einem CronJob (alle 5 min)[/li][/ul]
Was meint ihr?

Lg max

eindeutig if!

cronjob macht bei siwas rein gar kein sinn…

andi

belastet das den Server nicht zuviel?

du könntest ja einen “home made” cron machen. in einer datei speicherst du letzte updatezeit. wenn seit dem eine gewisse zeitspanne her ist, lässt du erneut eins machen. funktioniert nur, wenn besucher auf deiner seite sind - was aber ja eigentlich der sinn ist, oder?

Warum willst du denn wissen, welche Benutzer länger als 20min inaktiv sind? Für eine Online-Anzeige musst du das sowieso jedes mal neu aus der Datenbank lesen und mir fällt nicht ein, wofür man das sonst noch brauchen könnte.

Für solche Zwecke sind Sessions genau das richtige.

Also nochmal genau:

Ich habe in einer datenbank folgendes gespeichert
[list=][]Name des Users []Dann die Sessionid [*]und den letzten Timestap[/list]

Wenn ich jetzt bei jedem Aufruf den den Timestap - 20min mache und dan abfrage bei welchem nutzer der Timestap gößer ist und bei den Betreffenden datensätzen die Sessionin auf: NULL steze.

Weil sonnst stimmt die Anzeige wieviele Benutzer gerade online sind nicht…

Also sagt ihr alle if?

lg max

Oder du berücksichtigst das gleich bei der Abfrage, wie viele Benutze online sind.

ok ja das schon aber auf jeden fall mit if?

Das solltest du komplett per SQL lösen. Entweder löschst du jedes mal zuerst alle abgelaufenen Sessions aus der Datenbank raus oder du machst bei der Abfrage das Limit mit WHERE
Du brauchst hier nie ein PHP-if.

ok so mache ich das danke!

lg max

Die „stimmt“ sowieso nie wirklich, weil es kein „online“ gibt.

aktuell.de.selfhtml.org/artikel/ … seronline/

doch dann schon … mir geht es nicht um die die auf der seite rum schaun sondern die eingeloggten nutzer!

lg max

Du hast die Problematik, wie sie im Artikel beschrieben ist, nicht verstanden.

Oder du nicht meine:

also ich mache ein Community in der ein nutzer der 20 min nichts auf meiner seite macht ausgelogt wird! Ich habe Dann eine Anzeige wieviele Benutzer eingelogt sind (WHERE session != ‘NULL’) verstanden?

ich hoffe ich rede keinen Müll.
Auf jeden fall klappt es jetzt so wie ich es mir vorgestellt habe^^
danke bb

lg