.: HosiriS :.

Informatica e non solo

Classi: contatore visite

Posted by hosiris su maggio 3, 2010

In attesa di aver imparato ad usare i moduli per Drupal, parlo di una funzioncina che avevo scritto per visualizzare il numero di visite al sito.
La funzione è questa:


// definiamo i file in cui salvare le informazioni
$visits_file = "file/visits.txt";
$uniques_file = "file/uniques.txt";
// Cominciamo con il contare le visite totali
// prelevo prima l'attuale numero di visite
$counter = fopen($visits_file, "r");
$total = fread($counter, filesize($visits_file));
fclose($counter);
// e aggiungo 1
$total++;
// sovrascrivo il valore
$counter = fopen($visits_file, "w");
fwrite($counter, $total);
fclose($counter);
// Per il contatore delle visite uniche faremo uso dei cookie
// prelevo l'attuale numero
$unique_hits = fopen($uniques_file, "r");
$total_uniques = fread($unique_hits, filesize($uniques_file));
// e aggiungo uno soltanto se non esiste un cookie
if($_COOKIE["unique_hit"] != "set")
{
  setcookie("unique_hit", "set", time()+2419200);
  $total_uniques++;
}
// infine sovrascrivo il valore
$uniques_hits = fopen($uniques_file, "w");
fwrite($uniques_hits, $total_uniques);
fclose($uniques_hits);

Come potete notare il codice è altamente semplice.
Nella pagina in cui vogliamo far apparire il conteggio, inseriamo questo codice (dopo aver incluso la funzione):


<strong><?php echo $total?></strong> visite totali
<strong><?php echo $total_uniques?></strong> visite uniche

ottenendo un risultato come questo:

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

 
%d blogger cliccano Mi Piace per questo: