Destruction impossible des cookies.
disachlorane
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
disachlorane Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
disachlorane Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Voilà, une semaine après, le petit canard est toujours vivant! A la connexion d'un utilisateur, je créé les cookies comme suit :
Puis par sécurité, newboy peut se déconnecter et supprimer les cookies (par appel de la fonction javascript fermer_cookies() qui appelle la fonction SuppressionCookie()) comme suit :
J'ai essayé ça en php :
Après vérification par
les cookies n'apparaissent plus. Je suis en droit de penser que les cookies sont supprimés.
Mais si j'appelle MonSite dans une nouvelle fenêtre, ces bloody cookies apparaissent à nouveau.
J'ai tenté plusieurs solutions (sous Php et sous javascript). J'ai fouillé les forums du sud au nord et d'est en ouest. Toutes les solutions aboutissent au même résultat.
Ma question : hormis le grand coup de masse sur l'ordi, y a-t-il une solution viable pour tuer le petit canard ? Faudrait-il tuer la variable de session ?
Merci de votre aide car je n'ai plus d'idées
Voilà, une semaine après, le petit canard est toujours vivant! A la connexion d'un utilisateur, je créé les cookies comme suit :
$LOgin="newboy";
$EMail="newboy@gemolu.com";
$domain="www.monsite.com";
$clogin='login_cook';
$cemail='email_cook';
$keepconnect="keep_connect";
$stp=time();
$stamp=$stp+(int)604800; // 7 jours
$domain=$_SERVER['HTTP_HOST'];
if (!isset($_COOKIE['login_cook'])) setcookie($clogin,$LOgin,$stamp,"/",$domain,false);
if (!isset($_COOKIE['email_cook'])) setcookie($cemail,$EMail,$stamp,"/",$domain,false);
if (!isset($_COOKIE['keep_connect'])) setcookie($keepconnect,"oui",$stamp,"/",$domain,false);
Puis par sécurité, newboy peut se déconnecter et supprimer les cookies (par appel de la fonction javascript fermer_cookies() qui appelle la fonction SuppressionCookie()) comme suit :
function SuppressionCookie(nom)
{
var cookie = document.cookie;
var expireDate = new Date();
expireDate.setTime(expireDate.getTime() + (-1)*72000);
cookie = nom+"="+escape(" ")+"; expires="+expireDate.toGMTString()+"; path=/";
document.cookie = cookie;
}
function fermer_cookies()
{
SuppressionCookie('keep_connect');
SuppressionCookie('login_cook');
SuppressionCookie('email_cook');
window.location = 'index.php?disconnect=1';
}
J'ai essayé ça en php :
function close_cookies()
{
$stamp=time()-604800;
$domain=$_SERVER['HTTP_HOST'];
if (isset($_COOKIE['login_cook'])) setcookie('login_cook',"",$stamp, "/", $domain, false);
if (isset($_COOKIE['email_cook'])) setcookie('email_cook',"",$stamp, "/", $domain, false);
if (isset($_COOKIE['keep_connect'])) setcookie('keep_connect',"",$stamp, "/", $domain, false);
}
Après vérification par
if (isset($_COOKIE['login_cook'])) .....
les cookies n'apparaissent plus. Je suis en droit de penser que les cookies sont supprimés.
Mais si j'appelle MonSite dans une nouvelle fenêtre, ces bloody cookies apparaissent à nouveau.
J'ai tenté plusieurs solutions (sous Php et sous javascript). J'ai fouillé les forums du sud au nord et d'est en ouest. Toutes les solutions aboutissent au même résultat.
Ma question : hormis le grand coup de masse sur l'ordi, y a-t-il une solution viable pour tuer le petit canard ? Faudrait-il tuer la variable de session ?
Merci de votre aide car je n'ai plus d'idées
A voir également:
- Destruction impossible des cookies.
- Supprimer les cookies - Guide
- La cause de ce problème peut être la désactivation ou le refus des cookies. ✓ - Forum PHP
- Cookies manager - Télécharger - Confidentialité
- Extension refuser cookies - Guide
- Destruction disquettes informatiques - Forum Virus
1 réponse
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, es-tu certain que ton code n'a pas recréé les cookies?
Je me suis posé la question aussi. Mais la création des cookies n'a lieu qu'à la connexion avec login-name et mot de passe, et je ne repasse pas par là quand j'appelle le site dans une nouvelle fenêtre.
creation.php
suppression.php
montrer.php
Oui, ça fonctionne très bien.
J'ai donc intégré ton code php dans ma page. Et là, pffff, le petit canard est toujours vivant.
Je passe par une tuerie de cookies (qui contient ton code) et je teste immédiatement après pour constater qu'ils existent toujours.
Je vérifie l'existence des cookies dans le navigateur. Ils sont bien présents après la connexion de l'utilisateur et toujours présents après sa déconnexion qui est censée supprimer les cookies comme suit :
J'ai une information que je n'ai pas donnée; et pour cause, je n'avais pas pris conscience de son éventuelle importance : je passe par XMH pour créer mes cookies.
Je m'explique. Une fenêtre qui sert à la connexion (login et mot de passe) vient s'intégrer dans la page d'accueil. Cette fenêtre est créée en XML. Elle appelle ensuite une page qui vérifie l'existence du membre et qui créé les cookies comme décrit plus haut.
Question : le fait que les cookies sont créés en background peut-il être la raison de leur désespérante vivacité ?
par ailleurs, pourquoi n'utilises-tu pas plutôt des variables de session pour mémoriser ce informations?
J'ai creusé le problème. Comme j'ai vu que même ton code (qui est parfaitement exact) ne parvenait pas à détruire les cookies, j'ai compris qu'ils étaient indestructibles car créés en background. J'ai donc créé les cookies au retour du processus XML, directement dans la page d'accueil. Et là, la destruction a été possible. Je ferai d'autres tests car je veux comprendre.
En conclusion, le code était bon mais pas bien placé.
Merci de ton attention et de ton aide. L'idée naît de la concertation.