io ho fatto questo che però lavora con un database, penso che però non sia difficile adattarlo alel tue esigenze:
Codice PHP:
<?php
include('db.php'); #include il file di database
if(isset($_COOKIE['tuosito_counter'])) #cerca il cookie
{
#se il cookie esiste ne estrae il valore
#quindi lo confronta con l'id sul database
#e rileva se sono passate 24 ore
$id = $_COOKIE['tuosito_counter'];
$res = mysql_query("SELECT ora FROM visite WHERE id = $id", $db);
$row = mysql_fetch_array($res);
$ora_db = $row['ora'];
$ora_at = time();
$expired = (($ora_db - $ora_at) <= 0 )?true:false;
}
else
{
$expired = true;
}
#se sono passate 24 ore dall'ultima visita
if($expired)
{
$tem = time();
$t = time() + 84600;
mysql_unbuffered_query("INSERT INTO `visite` ( `id` , `ora`, `giorno` ) VALUES ('', $t, $tem)", $db) or die (mysql_error());
setcookie('tuosito_counter', mysql_insert_id(), time() + 84600);
}
?>
ma questo ha 2 difetti: il primo è che fatto così lavora solo con database e andrebbe adattato. il secondo è che se l'utente eliina o non accetta i cookies, può aumentare il counter tutte le volte che vuole.