Salve cè un modo in php per contare gli utenti connessi al sito in tempo reale???
In asp si usa il file global.asa in php so che non si pùò allor acome si fà in php???
Grazie a tutti
Salve cè un modo in php per contare gli utenti connessi al sito in tempo reale???
In asp si usa il file global.asa in php so che non si pùò allor acome si fà in php???
Grazie a tutti
Cosa fa in ASP esattamente il file global.asa ?
In PHP puoi usare:
1) un file in cui scrivere gli utenti connessi (e quando è stata la loro ultima azione) così da impostare un timeout per la connessione su cui fare il controllo.
2) scrivere la stessa cosa di prima su un database.
3) ricreare, se è fattibile, quello che fai con ASP ma con del codice tutto tuo.
Administrator of NAMDesign.Net
una cosa come il file global.asa in PHP non esiste (ed è l'unica cosa che un po' mi manca di ASP).
Io di solito quando devo fare una cosa del genere memorizzo l'ultima azione in una tabella del database e recupero il numero di utenti online contando quanti sono ad aver svolto un azione in un timeout prestabilito... ad esempio 5 o 10 minuti.
« Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]
grazie raga per le risposte, ma potreste essere più comprensibili per un ignorante come me.
Potreste farmi un esempio o accennare un esempio?
Grazie.
allora io solitamente faccio così...
- ho una classe user che viene sempre caricata e mi serve per riconoscere gli utenti in base alle sessioni o altro, in questa classe nel costruttore di solito se voglio tracciare gli utenti online aggiungo una query tipo
dando per scontato il fatto di avere un campo in formato timestamp "last_action" nella tabella utenti.Codice PHP:
"UPDATE utenti SET last_action = NOW() WHERE user_id = " . $_SESSION["user_id"];
Con questi query ad ogni caricamento di una pagina viene aggiornata la data di ultima azione dell'utente loggato (se ti interessano anche gli anonimi devi fare una cosa simile tenendo traccia degli IP)
- quando voglio visualizzare il numero di utenti collegati faccio una query del tipo
Spero di essermi spiegato...Codice PHP:
"SELECT COUNT(*) AS totale_collegati FROM utenti WHERE last_action >= NOW() - {intervallo scelto in secondi}
![]()
« Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]
certo finora tutto ok capito ma te poi gli utenti non li cancelli quando escono dal sito web???
facendo così avrai una interminabile tabella nel database.
in quel modo non li cancello perchè aggiorno solo un campo nella tabella che contiene già tutte le loro informazioni tipo username, email e così via...
in un ambito diverso basta fare un garbage collector da lanciare con cron chessò una volta al giorno per cancellare i record relativi al giorno precedente e sei a posto...
« Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]
ecco ora ci siamo difatti la mia domanda della cancellazione era dovuto al fatto per utenti non riconosciuti.
ok grazie di tutto
a una cosa ancora questa classe che hai creato te dove la emtti mi potrsti fare un esempio grazie e poi con le session coem faccio a sapere se lutente è in liena o no scusa il php e alto server
come faccio a capire e cancellarlod al database quando esce????.
se vuoi questa e' la mia soluzione, utilizza il db ma volendo si puo usare anche un file xml
http://www.cyberfox.netsons.org/blog...hp?a=view&id=5
so greyfox è quello che cercavo però cavolo ce so 2 cose che non capisco io sono da poco sul php.
Queste due istruzioni:
$loop=$t-($int*60);
$fl=$_SERVER['PHP_SELF'];