Rieccomi.
Ho fatto un codice di un contatore in questo modo :
Codice PHP:
function controlla_cookie($nome_cookie)
{
if (isset($_COOKIE[$nome_cookie]) && time()>($_COOKIE[$nome_cookie]+3600))
{
setcookie($nome_cookie,time(),time()+3600);
if (isset($_COOKIE[$nome_cookie]) && time()<($_COOKIE[$nome_cookie]+3600))
return true;
else
return false;
} elseif (!isset($_COOKIE[$nome_cookie]))
{
setcookie($nome_cookie,time(),time()+3600);
if (isset($_COOKIE[$nome_cookie]))
return true;
else
return false;
} else
return false;
}
praticamente vorrei che il mio contatore aumentasse di uno ad ogni visitatore unico a distanza di un ora.
il primo if controlla se esiste già un cookie e se questo è stato settato più di un'ora fa.
-> se questo if è vero allora risetta il cookie. dopo controlla se il cookie è stato settato correttamente (per farlo devo verficare che sia stato settato meno di un'ora fa). in caso affermativo ritorna true, altrimenti false.
-> se il primo if è falso controlla se il cookie non esiste proprio oppure è stato settato meno di un'ora fa. nel primo caso lo setta, controlla se il setting è andato a buon fine e se si ritorna true altrimenti false. nel secondo caso ritorna false.
Ora...come mai non funziona? l'effetto di questo contatore è quello di non incrementarsi mai, in nessuno dei casi. Ovvero non si incrementa ne se un nuovo utente lo visualizza ne se un vecchio utente che non visualizzava da più di un'ora rivisualizza.
Grazie