Siamo in grado di scoprire chi sono online o l'accesso al sistema. Questo visualizzata anche come membri attivi oggi a piè di pagina di qualsiasi sito o in qualsiasi sistema di login. Questa è integrato in qualsiasi sistema di login di qualsiasi sito. Cercheremo di imparare come un tale sistema funziona e visualizzare i nomi (o user id) dei membri attivi del sito. Questo è parte di un sistema in cui i membri effettuare il login con il proprio user id e password.
Come si può capire i dettagli membri sessione dopo il login vengono memorizzati sul lato server e non sul lato client. In modo da ottenere i dati dal server non è possibile in quanto gli script non avranno accesso root. Quindi cercheremo di mantenere un sistema parallelo di più sapere che sono loggato Ecco alcuni passi che hanno preso esclusivamente per questo e farci conoscere diverse fasi di questo script.
La memorizzazione delle informazioni di login in una tabella
Ogni volta che un membro Loges con successo in noi memorizzare i dati con l'aggiunta di un record per il nostro tavolo creato esclusivamente per questo scopo. Noi chiamiamo questa tabella come plus_login. Ha cinque campi memorizzazione id di sessione all'interno id campo del nome, usrid memorizzazione user id dell'utente connesso negli Stati membri, l'indirizzo IP del sistema da cui membro ha effettuato l'accesso, il tempo di registrazione in nome del campo tm e lo stato che sarà impostato su OFF una volta che il membro disconnesso e noi lo impostata su ON per impostazione predefinita. Quindi una volta che un membro registrato in noi memorizzare tutte queste informazioni con l'inserimento di un record in cui viene impostato lo stato di default su ON. La struttura della tabella (dump sql) è disponibile all'interno del file zip per il download al fine di questo tutorial.
Aggiornamento lo stato dell'elemento
Abbiamo lo stato memorizzato nella nostra tabella plus_login dove abbiamo impostato lo stato su ON. Insieme con lo stato siamo anche memorizzare il tempo della loggato Ora dobbiamo aggiornare questo status su ON e aggiornare il nuovo orario (campo nome tm) su ogni volta che il membro si apre all'interno dell'area membri. Abbiamo mantenuto il codice per aggiornare il plus_table con il nuovo orario e lo stato su ON bottom.php all'interno della pagina. Questa pagina si chiama bottom.php da tutte le pagine alla fine. Questa pagina bottom.php fa tre lavori. In primo luogo aggiornare lo stato dello stato dell'utente collegato con il nuovo orario e impostare su ON. Ecco il codice di questa prima fase.
$ Tm = date ("Ymd H: i: s");
$ Q = mysql_query ("update status di set plus_login = 'ON', tm = '$ tm' dove '$ session [id]' id =");
In secondo luogo lo contrassegna lo stato di OFF per tutti i membri che non ha interagito con il sito entro gli ultimi 10 minuti. (Questo è il motivo ci sarà rendere lo stato di ON e nuovo tempo per ogni chiamata di pagina del membro). Ecco il codice all'interno bottom.php per questo passo.
$ Gap = 10; / / Gap valore può essere modificato, questo è in minuti.
/ / Cerchiamo di scoprire il tempo prima di 10 minuti del tempo presente. / /
$ Tm = date ("Ymd H: i: s", mktime (date ("H"), date ("i") - $ gap, date ("s"), date ("m"), date (" d "), date (" Y ")));
Ecco la query per fare questo
$ Ut = mysql_query ("update status di set plus_login = 'OFF', dove tm <'$ tm'");
Al terzo gradino raccoglie le ID di accesso membri per i quali il tempo è nel corso degli ultimi 10 minuti e lo stato è impostato su ON. Essi sono la nostra loggati o che sono attivi sul sito. Il codice si può vedere uno Visualizzazione che sono attivi nella sezione del sito (scorrere verso il basso)
Cosa succede quando un utente si disconnette
Cambiamo lo stato del sistema su OFF e distruggere la sessione. Abbiamo mantenuto questo codice all'interno pagina di logout.
$ Q = mysql_query ("update status di set plus_login = 'OFF', dove id = '$ session [id]'");
Cosa succede quando non interagisce membro per più di 10 minuti?
Potete vedere ogni volta che viene aperta una pagina e se la pagina è pagina chiamante bottom.php quindi tutti gli utenti verrà modificato in stato OFF se la loro tm (campo) è inferiore al 10 minuto del tempo presente. Quindi, se nessun altro membro ha aperto qualsiasi pagina, quindi lo stato non cambierà su OFF. Se pensi che questo deve essere curato, è possibile utilizzare uno scheduler (win server) o cron per eseguire l'aggiornamento di stato parte una volta ogni 10 minuti. Controllare la query di cui sopra alla terza fase.
Visualizzazione che sono attivi sul sito
Abbiamo mantenuto il codice all'interno del file bottom.php, in modo da qualsiasi altra pagina questa pagina può essere chiamato. È possibile visualizzare il codice all'interno di questa pagina dove abbiamo usato una query semplice per raccogliere l'id utente per il quale lo stato è ON e il tempo di campo (tm) è più che oggi meno di 10 minuti. La query è qui.
$ Qt = mysql_query ("select userid dal plus_login dove tm> '$ tm' e status = 'ON'");
Il riposo è semplice esposizione di ID utente, è possibile vedere come visualizzare nella nostra esercitazione di visualizzazione dei dati.
Questo è tutto, scaricare il file zip con il codice che è online qui.













































