Session PHP pour le comptage des visites et rediriger si (session['visites']=1)
Je suis en train de faire une page sur laquelle si vous utilisateur vient première fois qu'il redirige vers la page d'index, mais si l'utilisateur vient 2ème fois que la page n'a pas de redirection.
Je suis à l'aide de simples session php pour le comptage de la visite et une instruction if pour vérifier la condition:
<?php
session_start();
$_SESSION['views'] = $SESSION['views']+1;
if($SESSION['views'] = 1){
header("location:index.php");
}
?>
Le problème est d'initialiser le tableau avec zéro je.e
<?php
$_SESSION['views']=0;
?>
C'est de produiraient que beaucoup simple qu'il y paraît et ni bien difficile.
vous devez ajouter == pour le si pas =
Vous accidentelle de votre session de la var à 1.
Vous accidentelle de votre session de la var à 1.
if($SESSION['views'] = 1)
. Utilisation ==
la place pour les instructions conditionnelles, pas =
OriginalL'auteur Leo | 2012-07-14
Vous devez vous connecter pour publier un commentaire.
Utilisation
isset()
pour vérifier si la clé a été créé:Également être prudent: vous avez eu
if ($SESSION['views'] = 1)
qui définit la clé à 1 pas de la comparer, et de la bonne superglobale nom est$_SESSION
pas$SESSION
.OriginalL'auteur johngirvin
tout d'abord (où @nivrig et @Yan ne pas fixer)
devrait être
et aller avec @nivrig
son exemple est droit
bienvenue @absar akram
OriginalL'auteur ryanc1256
D'accord avec nivrig.
Vérifier si la session a été défini.
Vous avez un couple d'erreurs de syntaxe dans ton code:
Assurez-vous d'écrire $_SESSION et pas $SESSION et lorsque vous utilisez un de ces cas, vous devez utiliser == pour comparer. Un seul = va assigner une valeur à une variable.
OriginalL'auteur Horen
Puisque vous ne voulez pas à vous soucier de l'initialisation de la variable première, utiliser la fonction isset() qui va vérifier si la variable est définie et n'est pas NULLE:
Si vous ne vous souciez pas combien de fois que l'utilisateur a été à la page, vous pouvez simplement utiliser:
La deuxième solution ne vous inquiétez pas à propos de l'augmentation du nombre de
views
et vérifie juste si la valeur a été définie ou non. Si elle n'a pas été fixé, alors vous pouvez affirmer que c'est la première fois de visiter la page et vous serait alors la variable et de rediriger l'utilisateur. En définissant la variable, vous devez vous assurer que l'utilisateur n'a pas à entrer dans une boucle après qu'ils ont déjà vu la page. Cette approche devrait permettre de mieux simplifier les choses, comme initialement demandé.Aussi assurez-vous de mettre
exit()
après la redirection de l'utilisateur. Cela permet de s'assurer que le code ne soit pas exécutée lorsque la redirection de l'utilisateur.OriginalL'auteur RobB