dimi3 Posté 17 Février 2011 Partager Posté 17 Février 2011 (modifié) Bonjour, Afin de n'incrémenter mon compteur de visites qu'à la première ouverture du fichier index de mon site, j'ai imaginé ce code : <?php$_SESSION_START();if (!isset($_SESSION['visite'])) {$compteur++;}else{$_SESSION['visite'] = "1";} Ca ne fonctionne pas. Ce code incrémente mon compteur à chaque ouverture du fichier index. Voyez-vous une erreur dans mon raisonnement ? Je vous remercie. Modifié 17 Février 2011 par dimi3 Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 17 Février 2011 Partager Posté 17 Février 2011 $_SESSION_START(); ne veut rien dire (Bizarre qu'il ne te lance pas d'erreur, d'ailleurs). Remplace-le par "session_start();", tout simplement. Lien vers le commentaire Partager sur d’autres sites More sharing options...
dimi3 Posté 17 Février 2011 Auteur Partager Posté 17 Février 2011 $_SESSION_START(); ne veut rien dire (Bizarre qu'il ne te lance pas d'erreur, d'ailleurs). Remplace-le par "session_start();", tout simplement. Merci de votre attention. J'ai fait erreur en écrivant mon code dans mon message précédent. Dans mon fichier, j'ai bien mis "session_start();". Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 17 Février 2011 Partager Posté 17 Février 2011 As-tu un session_start() sur chacune de tes pages ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
dimi3 Posté 17 Février 2011 Auteur Partager Posté 17 Février 2011 As-tu un session_start() sur chacune de tes pages ? Oui, partout. Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 17 Février 2011 Partager Posté 17 Février 2011 Juste au cas où : où et comment est définie ta variable compteur ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ernestine Posté 17 Février 2011 Partager Posté 17 Février 2011 Mais ce code est sensé faire quoi ? Et qu'est ce qui ne marche pas ? Là tel quel, à première vue, $_SESSION['visite'] n'est jamais initialisée, puisqu'on l'initialise à 1 uniquement dans le cas où il existe déjà (si !isset($_SESSION['visite'] n'est pas vérifé, donc si $_SESSION['visite'] existe) Lien vers le commentaire Partager sur d’autres sites More sharing options...
dimi3 Posté 17 Février 2011 Auteur Partager Posté 17 Février 2011 (modifié) Juste au cas où : où et comment est définie ta variable compteur ? La variable compteur se trouve dans un fichier texte. Le code complet est : <?php$_SESSION_START();$fc= fopen("./compteur/compteur.txt",'r');$compteur = fgets($fc,1024);$compteur = trim($compteur);fclose($fc);if (!isset($_SESSION['visite'])) {$compteur++;}else{$_SESSION['visite'] = "1";} Il ne me semble pas que le problème se situe au niveau de la variable compteur puisque celle-ci s'incrémente correctement, mais au niveau de ma condition qui n'est pas respectée. Le compteur s'incrémente même quand la condition n'est pas satisfaite. Modifié 17 Février 2011 par dimi3 Lien vers le commentaire Partager sur d’autres sites More sharing options...
dimi3 Posté 17 Février 2011 Auteur Partager Posté 17 Février 2011 (modifié) Mais ce code est sensé faire quoi ? Et qu'est ce qui ne marche pas ? Là tel quel, à première vue, $_SESSION['visite'] n'est jamais initialisée, puisqu'on l'initialise à 1 uniquement dans le cas où il existe déjà (si !isset($_SESSION['visite'] n'est pas vérifé, donc si $_SESSION['visite'] existe) Voilà, j'étais sûr d'avoir fait une erreur de raisonnement... mais je ne parvenais pas à la déceler. Merci à toi et merci à Captain_torche pour ses propositions de vérifications. Modifié 17 Février 2011 par dimi3 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant