Signaler

Suppression de cookies en PHP [Résolu]

Posez votre question Soda - Dernière réponse le 19 janv. 2014 à 16:57
Bonjour, j'ai un petit soucis avec les cookies et PHP.

J'ai créé mes cookies dans un tableau associatif de cette maniere :
while (list($key, $val) = each($HTTP_POST_VARS))
	setcookie($site."[".$key."]", $val, $time + 3600, "/");



Ensuite, j'essaie de supprimer ces cookies avec cette boucle, mais cela ne semble pas marcher :
while (list($name, $val) = each($HTTP_COOKIE_VARS))
	setcookie($name, "", time() - 3600, "/");


Faut il faire quelque chose de special à cause du tableau associatif?

Merci.
Afficher la suite 
Utile
+27
moins plus
Tu as 2 solutions :

PHP - Les cookies et les en-têtes HTTP

Supprimer un cookie


Il peut éventuellement être utile de proposer à l'utilisateur de supprimer certains de ses cookies, ou bien de le faire vous même de façon transparente.

Pour ceci il suffit de renvoyer le cookie grâce à la fonction setcookie() en spécifiant simplement l'argument NomDuCookie :

<?
setcookie("Visites");
?>


Une autre méthode consiste à envoyer un cookie dont la date d'expiration est passée :

<?
setcookie("Visites","",0,"/","",0);
?>
chrisdu31- 17 août 2009 à 09:52
Ce qui est indiqué ci-dessus ne fonctionne pas. Je pensais que la méthode unset suffisait mais ce n'est pas le cas. Le code ci-dessous expire le cookie dans le navigateur web puis le supprime. Je suppose que la suppression ne doit être possible que si le cookie est expiré...
Il faut combiner setCookie avec contenu false et date d'expiration antérieure à l'heure courante. Puis faire un appel à la méthode unset. Le code suivant fonctionne :

// Set expiration time to -1hr (will cause browser deletion)
setcookie("Visites", false, time() - 3600);
// Unset key
unset($_COOKIE["Visites"]);
Répondre
Ajouter un commentaire
Utile
+21
moins plus
Bonsoir, quand tu veux supprimer un cookie, fais :
<?php setCookie($name, '', (time() - 3600, '/'); ?>
;), bonne soirée.
Binary- 19 janv. 2014 à 16:57
setcookie ($name,"false",(time() - 3600));
Répondre
Ajouter un commentaire
Utile
+12
moins plus
Salut, ton code est faux, il manque ')'.
Ajouter un commentaire

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !