Salve a tutti, dato che un po' di gente me lo chiede ho deciso di creare una piccola guida per realizzare un semplice contatore che restituisca gli utenti e i visitatori online negli ultimi 2 minuti.
Per fare ciò utilizzeremo il metodo SetInterval di JQuery per creare una piccola richiesta che andrà a:
- Salvare/Aggiornare la sessione attiva
- Rimuovere le sessioni scadute
Il metodo può sembrare un po' macchinoso, ma penso sia abbastanza buono per tenere un "registro" delle sessioni attive.
Per prima cosa andiamo a creare una semplice tabella nel nostro database, dove verranno salvate le sessioni attive:
Andiamo dunque a vedere come strutturare il tutto, ci basteranno tre semplici pagine:
contatore.php (che userò per caricare gli utenti online):
session_update.php (dove eseguirò le operazioni di registrazione, aggiornamento e pulizia delle sessioni)
Come vedete questo file farà tutto il "lavoro sporco".
A questo punto non resta altro che il file "index.php", dove andremo ad richiamare il check sulle sessioni e gli utenti online.
Dunque il contatore verrà aggiornato ogni secondo e restituirà il numero degli utenti attivi negli ultimi 2 minuti.
Spero che questa guida possa esservi utile, vi aggiungerei un po' di teoria ma sono sicuro che a pochi interessa, dunque beh.
Alla prossima :bye:
Per fare ciò utilizzeremo il metodo SetInterval di JQuery per creare una piccola richiesta che andrà a:
- Salvare/Aggiornare la sessione attiva
- Rimuovere le sessioni scadute
Il metodo può sembrare un po' macchinoso, ma penso sia abbastanza buono per tenere un "registro" delle sessioni attive.
Per prima cosa andiamo a creare una semplice tabella nel nostro database, dove verranno salvate le sessioni attive:
--
-- Struttura della tabella `online_users`
--
CREATE TABLE IF NOT EXISTS `online_users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ip` varchar(100) NOT NULL,
`timestamp` varchar(250) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0;
-- Struttura della tabella `online_users`
--
CREATE TABLE IF NOT EXISTS `online_users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ip` varchar(100) NOT NULL,
`timestamp` varchar(250) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0;
contatore.php (che userò per caricare gli utenti online):
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
session_update.php (dove eseguirò le operazioni di registrazione, aggiornamento e pulizia delle sessioni)
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Come vedete questo file farà tutto il "lavoro sporco".
A questo punto non resta altro che il file "index.php", dove andremo ad richiamare il check sulle sessioni e gli utenti online.
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Dunque il contatore verrà aggiornato ogni secondo e restituirà il numero degli utenti attivi negli ultimi 2 minuti.
Spero che questa guida possa esservi utile, vi aggiungerei un po' di teoria ma sono sicuro che a pochi interessa, dunque beh.
Alla prossima :bye:
Ultima modifica: