...Personalizza la tua HomePage...
Questa Sezione è Dedicata a Tutti i Webmaster Nofiti e Non
UserOnLine | ||||
|
||||
Avere un contatore di utenti connessi sul proprio sito è un usanza molto diffusa nel web. Con questo trucco vediamo come sia possibile con poche righe di codice realizzarne uno personalmente. Innanzitutto avremmo bisogno di due variabili: $timer = 2; $filename = "log.txt"; Queste variabili stanno ad indicare il tempo di timeout secondo il quale diremo che un'utente non è più connesso e il nome di un file sul quale salvare gli utenti connessi. Quello che andremo a realizzare non è altro che uno script che aggiunge righe ad un file indicando indirizzo IP e l'ora al quale l'utente ha richiesto la pagina. Per sapere quanti utenti sono connessi conteremo quanti di questi record non hanno ancora superato il tempo di timeout prefissato. // Apertura dei dati $file = dirname(__FILE__)."/$filename"; $time = @time(); $ip = $REMOTE_ADDR; $stringa = "$ip|$time\n"; // Aggiungo la riga al file $a = fopen("$filename", "a+"); fputs($a, $string); fclose($a); // Calcolo il tempo di timeout $timeout = time()-(60*$timer); // Conto quanti utenti connessi hanno ancora un tempo valido $all = ""; $i = 0; $file = file($filename); for ($num = 0; $num < count($file); $num++){ $pieces = explode("|",$file[$num]); if ($pieces[1] > $timeout){ $all .= $pieces[0]; $all .= ","; } $i++; } $all = substr($all,0,strlen($all)-1); $arraypieces = explode(",",$all); $useronline = count(array_flip(array_flip($arraypieces))); if ($useronline == 0) { $useronline = 1; } $content = $useronline. " utenti connessi."; ..CONTINUA... |