Problème suppression cookies et session

Bonjour,

Voila j’avais fait un système d’authentification basique qui jusqu’a présent convenait tres bien.

Je l ai recemment amélioré pour de nouveaux besoins et j ai voulu en particulier pouvoir garder l’authentification dans le temps sans avoir a se reauthentifier sans cesse si on fermait le navigateur.

J’ai donc ajouter en plus des sessions php, la gestion des cookies.

Le tout fonctionne pas trop mal sauf a un niveau : la fermeture de session.

En effet, le système voit que la session est fermée si seulement la session est inexistante et que le cookie est detruit aussi. or mon code detruit bien la session (ca marchait bien avant) par contre ne detruit pas le cookie.


<?php
session_start(); 


// on supprime une variable de session
session_unregister("login"); 

// maintenant on détruit la session en cours.

session_unset(); // on efface toutes les variables de session
session_destroy(); // on detruit la session en cours.


{
//suppression des cookies d'authentification
setcookie('intranetid','',1);
setcookie('intranetlogin','',1);
setcookie('intranetniveau','',1);

//redirection vers la page d'index
header('Location: ../index.php') ;
exit;};
?>

Qu’en pensez vous?

merci d’avance

Je ne vois pas pourquoi tu as des accolades dans ton script? Si tu as mis une condition vérifie si elle est vrai.

pour supprimer un cookie il faut mettre la fin de validité dans le passé je croi.


setcookie( 'monCookie', '', time() - 3600 );

merci pour vos reponses.

les accolades servent juste a organiser le script et bien regrouper pour moi rien de plus, il n y a aucune condition liée a cette accolades

je viens de faire un essai, apparement ca serait la suppression des sessions + les cookies en meme temps qui poserait problème.

En effet avant la supression des sessions marchait bien et je viens d’essayer la destruction seule des cookies ca marche aussi

par contre ensemble ca ne marche pas…

qu’en pensez vous?

Ya pas de raison que ca marche pas groupé. Sinon pour les accolades généralemetn c’est delimite les porté des variables.

Sauf en php, où c’est global ou local à la fonction, méthode…

j ai deja deplacer le code de suppression du cookie sans resultat