PDA

View Full Version : [PHP] Lista Utenti Online


Cimi
22-08-2003, 04:18
Vorrei realizzare uno script che mi faccia vedere chi è online nel mio sito (considerando che prima si sono registrati e loggati, ma i moduli registrazione e login li ho già fatti)... nessuno ha idee? o url?

cionci
22-08-2003, 12:20
Che io sappia, non è così semplice... In ASP sarebbe molto semplice visto che esistono delle procedure che vengono lanciate al momento della creazione e della distruzione della sessione...

In PHP purtroppo questi eventi non ci sono e quindi bisogna lavorarci un po' di più...
La cosa + semplice è segnare nella tabella relativa agli utenti la data a el'ora dell'ultimo accesso al sito... Questo ovviamente comporta una query di aggiornamento per ogni accesso dell'utente...
Per limitare questo problema basta segnare l'ultimo accesso solo se l'ultimo accesso presente già nella tabella è vecchio di almeno X minuti...
Quindi ci sarà una query di selezione per ogni richiesta ed al massimo ogni X minuti una query di aggiornamento...

Per recuperare la lista degli utenti basta fare una query sulla tabella degli utenti in cui si chiede di riportare solamente gli utenti con l'ultimo accesso + vecchio di Y minuti (con Y > X)...

Ad esempio valori buoni per X e Y possono essere X = 5 e Y = 30...

DarkSiDE
24-08-2003, 01:01
Originariamente inviato da cionci
Che io sappia, non è così semplice... In ASP sarebbe molto semplice visto che esistono delle procedure che vengono lanciate al momento della creazione e della distruzione della sessione...

In PHP purtroppo questi eventi non ci sono e quindi bisogna lavorarci un po' di più...
La cosa + semplice è segnare nella tabella relativa agli utenti la data a el'ora dell'ultimo accesso al sito... Questo ovviamente comporta una query di aggiornamento per ogni accesso dell'utente...
Per limitare questo problema basta segnare l'ultimo accesso solo se l'ultimo accesso presente già nella tabella è vecchio di almeno X minuti...
Quindi ci sarà una query di selezione per ogni richiesta ed al massimo ogni X minuti una query di aggiornamento...

Per recuperare la lista degli utenti basta fare una query sulla tabella degli utenti in cui si chiede di riportare solamente gli utenti con l'ultimo accesso + vecchio di Y minuti (con Y > X)...

Ad esempio valori buoni per X e Y possono essere X = 5 e Y = 30...

come direbbe Bisio: Sagace...