Bonjour à tous,

Voilà, il faudrait que mon code retienne 24H avant de comptabilisé un visiteur qu'il a déjà compté.

Le code fonctionne, mais dés que j'actualise, sa ajoute +1 à mon fichier compteur txt

Le code : COMPTEUR.PHP

<?
//CONFIGURATION
//Nom du cookie a installer
$cookie_install = "compteur_visite_bashvideo5" ; //Il est recommendé de changer cette variable
//Un visiteur unique tous les :
$exp_year = 0 ; //Ans
$exp_month = 0 ; //Mois
$exp_day = 1 ; //Jour
 
 
//Configuration des variables automatiques
$year = date("Y") ;
$day = date("d") ;
$month = date("m") ;
//Vérification d'une visite pécédente
if($_COOKIE[$cookie_install] == "yet"){$a=false ;}else{$a=true ;}
 
//Lecture du nombre de visite
$fp = fopen("compteur.txt","r+");
$nbvisites = fgets($fp,11);
 
//Incrémentation, si besoin
if($a==true)
{
$nbvisites++;
}
 
//Actualisation du nombre
fseek($fp,0);
fputs($fp,$nbvisites);
fclose($fp);
 
//Instalation du cookie
setcookie($cookie_install,"yet",mktime(0,0,0,$day+$exp_day,$month+$exp_month,$year+$exp_year)) ;
?>
document.write("<? print($nbvisites); //Affichage du nombre ?>") ;


Et je met ceci sur ma page video.php pour afficher les visites :

<script language="javascript" src="compteur.php"></script>


Merci d'avance à vous
Bonjour,

Fais des

echo 'test1';

et

echo 'test2';

dans ton

if($_COOKIE[$cookie_install] == "yet"){$a=false ;}else{$a=true ;}

aux deux conditions, pour voir dans laquelle il rentre, ça permettra de définir si il n'y a pas un soucis à ce niveau là.
Modifié par j0r (03 Jun 2013 - 09:44)
Bonjour,

j0r à raison, et ajoute aussi dans ta condition un isset pour tester l'existance de ton cookie :


if(isset($_COOKIE[$cookie_install]) && $_COOKIE[$cookie_install] == "yet"){$a=false ;}else{$a=true ;}


En revanche il suffit que l'utilisateur désactive les cookies ou les modifies pour faire planter ton compteur : je te conseillerais de passer par une bdd