Compteur php

Fermé
nov - 4 avril 2007 à 16:49
 nov - 5 avril 2007 à 10:42
bonjour,j'ai rajouté un compteur en php sur mon site il marche mais le probleme c'est qu'il s'incrémente lorsqu'on rafraichit la page pourtant il utilise bien des cookies.
voici le code:
<?
if(file_exists("visiteurs.txt"))
{
print "";
}
else
{
$fp=fopen("visiteurs.txt","a");
fputs($fp,"0");
fclose($fp);
}
?>

<?

if (isset($cool_cookie) && $cool_cookie =="Deja_visite"){
$fichier="visiteurs.txt";
$fp=fopen("$fichier","r+");
$hits=fgets($fp,10);
echo"Vous êtes le "; echo $hits; echo" ème visiteur";


} else { // cookie absent (premiere visite, ou bien cookie expiré
setcookie("cool_cookie","Deja_visite",time()+2*3600,"");


$fichier="visiteurs.txt";
$fp=fopen("$fichier","r+");
$hits=fgets($fp,10);
$hits++;
fseek($fp,0);
fputs($fp,$hits);
fclose($fp);
echo"Vous êtes le "; echo $hits; echo" ème visiteur";
}

?>
j'aimerai bien qu'il ne compte qu'un seul meme visiteur sur 24h,
déjà je suppose qu'il faut modifier le time()+2*3600 par time()+24*3600 et surtout qu'il ne s'incremente pas lorsqu'on rafraichit la page.
merci d'avance
A voir également:

2 réponses

Salut,

Pour moi le pb essentiel vient du fait que tu essaies de faire un setcookie apres l'header, donc le cookie ne doit aps etre ecrit, as-tu vérifié que ton cookie était bien transmis ?

essaies
setcookie('cool_cookie','Deja_visite',time()+86400);
au tout debut avec le test avant le test d'accès au fichier.


Irem
0
merci irem,
j'ai suivi tes conseils et grace à toi le compteur marche!
merci encore
0