Seite 1 von 1

phpBB: Anzahl der User die "Heute" Online waren...

Verfasst: 03.05.2006 13:16
von das_Kratzerchen
Hi,

ich würde gerne im Index die Anzahl der Benutzer (Gäste + Registrierte + Versteckte) ausgeben die am aktuellen Tag Online waren, nur die Anzahl, nichts weiter, dies habe ich mit meinen spärlichen PHP kenntnissen so probiert, leider steigt die Anzahl und sinkt dann wieder?!

Code: Alles auswählen

$time = time();
$time_midnight = mktime(0,0,0,date('m', $time),date('d', $time),date('Y', $time));

$sql = "SELECT session_logged_in, session_time, session_page, session_ip
	FROM ".SESSIONS_TABLE."
	WHERE session_time > $mitternacht
	ORDER BY session_ip ASC";
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not obtain user online information', '', __LINE__, __FILE__, $sql);
}
$data_total = $db->sql_numrows($result);
$data_total enthält die Anzahl der User die Online waren. Hat jemand einen Tipp für mich?

Kratzerchen

Verfasst: 03.05.2006 14:41
von Pyramide
Das Problem ist, daß die Sessions ja nur eine begrenzte Gültigkeit haben und dann gelöscht werden (Standardmäßig eine Stunde). Das könnte man natürlich erhöhen, aber wenn du sowieso nur die Anzahl brauchst, wäre es Resourcenschonender, eine Tabelle mit den Feldern Tag+Anzahl anzulegen, welche du dann in session_create() hochzählst. Die Daten der vorigen Tage kannst du dann entweder automatisch löschen oder als Statistik behalten.

Verfasst: 03.05.2006 18:32
von Dennis63
NUR zu den Registrierten Usern:

Oder Du erweiterst die Usertabelle um eine neue Spalte, in der Du immer das Datum speicherst, wann der User online war.

Wenn das Datum aktuell ist, war der User da. Es entsteht der selbe Statistik-Effekt wie bei Pyramides Idee. Nur man kann später auch sehen, welcher User wann das letze mal da war.

Im Unterschied zu Pyramides Idee, zählt das bei den Registrierten Usern nicht doppelt, wenn der User nach einigen Stunden ein 2. mal kommt, kann aber keine Gäste zählen.

Grüße
Dennis

Verfasst: 03.05.2006 22:13
von Pyramide
Dennis Böge hat geschrieben:Im Unterschied zu Pyramides Idee, zählt das bei den Registrierten Usern nicht doppelt, wenn der User nach einigen Stunden ein 2. mal kommt
Es zählt aber auch nicht mehrfach, wenn der User jeden Tag einmal kommt.