Buongiorno,
ho provato due diversi script di counter molto semplici,
(uno dei quali è quello della guida "PHP guida PRATICA").
Entrambi utilizzano un file di testo per memorizzare le visite.
stralcio minimale:

Codice PHP:
$visits_file "lib/visits.txt";
$counter fopen($visits_file"r");
$total fread($counterfilesize($visits_file));
fclose($counter);

$total++;          

$counter fopen($visits_file"w");     
fwrite($counter$total);     
fclose($counter); 
Ho notato che a seconda del browser utilizzato,
lo script memorizza sul file un incremento differente:
-Mozilla incrementa per multipli di 3:
primo caricamento: $visit=0 (letto da file) -> html "visite:1
ricaricando la pagina: $visit=3 (letto da file) -> html "visite:4
ricaricando la pagina: $visit=6 (letto da file) -> html "visite:7

-Chrome e Explorer incrementano per multipli di 2:
primo caricamento: $visit=0 (letto da file) -> html "visite:1
ricaricando la pagina: $visit=2 (letto da file) -> html "visite:3
ricaricando la pagina: $visit=4 (letto da file) -> html "visite:5

-Opera e Safari.... FUNZIONANO BENE!!!

DOVE risiede l'errore?
Ogni script provato è concettualmente corretto, il funzionamento anomalo sembra dipendere dal browser.