Aller au contenu

variable de session et condition


dimi3

Sujets conseillés

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é par dimi3
Lien vers le commentaire
Partager sur d’autres sites

$_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

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

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é par dimi3
Lien vers le commentaire
Partager sur d’autres sites

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é par dimi3
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...