[RESOLU] Cookies de sessions

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Cookies de sessions

Re: Cookies de sessions

par yousss77 » 23 mai 2018, 20:28

Merci,
pour votre aide
:wink:

Re: Cookies de sessions

par @rthur » 23 mai 2018, 19:49

Alors, je n'ai pas compris la 1ère question, mais par contre j'ai la réponse à la deuxième question (et peut être que ça t'aidera à débuguer la 1ère ;-) )

La raison est que pour qu'un cookie soit mis à jour il faut que tu le renvoies avec setcookie() pour écraser la précédente valeur.

Voici donc le code qui fonctionne :
if (!isset($_COOKIE['nbr'])) {
	$nbr = 1;
	setcookie('nbr',$nbr,time()+120);
	echo 'on commence';
}else{
	$nbr=$_COOKIE['nbr']+1;
	setcookie('nbr',$nbr,time()+120);
	echo $nbr;
}
##edit : Ah ah, kevin254kl a été + rapide que moi !

Re: Cookies de sessions

par kevin254kl » 23 mai 2018, 19:46

Bonjour,

Code : Tout sélectionner

<?php if (empty($_COOKIE['nbr'])) { $nbr = 1; setcookie('nbr',$nbr,time()+120); echo 'on commence'; } else { $nbr = ++$_COOKIE['nbr']; setcookie('nbr', $nbr ,time()+120); echo $nbr; }

Cookies de sessions

par yousss77 » 23 mai 2018, 13:55

Salut,

comment se fait il qu'avec le code suivant en l'apparence correct ne fonctionne qu'à condition de retirer les accolades,
alors que normalement les accolades sont partie intégrantes des fonctions et ce malgré qu'elles ne sont pas obligatoires pour une seule instruction,

<?php
if (isset($_COOKIE['user'])) {
$nbr = $_COOKIE['user'] + 1; 
}

else {
$nbr = 1;
setcookie('user',$nbr,time() + 120);
}

echo $_COOKIE['user'];
et comment se fait il qu'avec ce code ci-dessous mon cookie s' incrémente une seule fois au rechargement des pages
à partir de 1 même avec rechargement ça ne s'incrémente plus ça bloque à 1
if (!isset($_COOKIE['nbr'])) {
$nbr = 1;
    setcookie('nbr',$nbr,time()+120);
echo 'on commence';
}
 else {
 $nbr = $_COOKIE['nbr']++;
 echo $nbr;
}
cordialement.