Un problema che spesso si presenta, quando si vuole tenere sotto controllo il numero di utenti online sul proprio sito, è rilevare se l'utente è uscito dal nostro sito chiudendo direttamente il Browser.
Non esiste infatti un modo per rilevare l'evento che l'utente abbia abbandonato il nostro sito portandosi su un altro sito, oppure che l'utente sia uscito chiudendo direttamente il Browser.
Vi presento quindi una soluzione a questo problema, realizzata con ASP ed Ajax.
Ovviamente aspetto critiche e migliorie allo script!
La mia soluzione è abbastanza semplice, e vi illustro la teoria, per la pratica vi rimando al mio blog (appena creato...e dove ho poco tempo per scrivere), che contiene anche lo zip con l'esempio.
Ho risolto il problema semplicemente con un approccio inverso: perché devo rilevare io quando l'utente chiude il browser..o esce dal sito...o altro?? Faccio uno script, che viene lanciato con Ajax, quindi con una richiesta asincrona al server, e che l'utente non vede neanche, tramite il quale l'utente mi segnala di essere ancora presente.
Quindi inizialmente l'utente quando accede segnala l'ora (a me serve solo il minuto) di entrata nel sito, e poi, ad un intervallo stabilito da me, aggiorna la sua presenza sul sito. Quando l'utente non aggiorna la sua presenza, perché è uscito, lo script che controlla il numero di utenti, lo elimina dal mio elenco degli utenti online.
Semplice!
Cmq, vi rimando al blog per la spiegazione più approfondita e per le pagine di esempio:
Blog di alessio_1976
Spero possa esservi utile!

Rispondi quotando