Aller au contenu

variable de session et condition


Sujets conseillés

Posté (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é par dimi3
Posté

$_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();".

Posté

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)

Posté (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é par dimi3
Posté (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é par dimi3

Veuillez vous connecter pour commenter

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



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