Supprimer une variable dans une session - PHP - Programmation
Marsh Posté le 18-07-2005 à 18:40:40
$_SESSION['tabResultat'] = null; ?
Marsh Posté le 18-07-2005 à 18:42:00
Citation : SAUF QUE... si je refais une recherche sans fermer mon navigateur, en fait, sont gardés en mémoire les résultats de la recherche précédente. |
Ceux de la recherche précédente prennent le dessus sur celles de la recherche courante ?
Fait voir un peu ce que tu mets dans recherche.php et là où tu vires la session.
Marsh Posté le 18-07-2005 à 18:53:14
Alors en fait oui on peut dire que les résultats de la recherche précédente prennent le dessus sur la recherche courante, comme si la nouvelle recherche n'était pas prise en compte.
Au niveau du code pour virer la session... bah après moultes essais, j'ai fini par tout virer pour tenter une suppression, mais en tous cas voila comment je m'y prennais:
session_start() ;
//Suppresion de la variable
$_SESSION['tabResultat'] = $tabResultat ;
Donc en gros avant de remplir ma variable de session, je tente de la supprimer.
J'ai essayé avec :
unset($_SESSION['tabResultat']);
session_destroy();
session_unset();
Voila voila... merci!
Marsh Posté le 18-07-2005 à 19:43:39
Mwi enfin comme ça va pas être facile de trouver, faudrait voir ton code exact sur chaque page.
unset est censée marcher.
J'ai une petite idée cela dit, si register_globals est activé chez toi il se peut que $tabResultat et $_SESSION['tableResultat'] se "confondent". Essaie d'appeler la var de session différemment pour voir.
Marsh Posté le 19-07-2005 à 10:28:50
sielfried > Merci !
T'as eu le nez creu, j'ai juste renommé ma variable de session et ça marche!
Merki !!
Marsh Posté le 18-07-2005 à 18:21:48
Bonjour,
Je n'arrive pas à supprimer un tableau contenu dans une session...
En fait je vais expliquer ce que je fais avec mon code, ça sera plus facile, et en meme temps peut-etre que quelqu'un me dira que je ne m'y prends pas de la meilleure manière qui soit!
Sur une premiere page (recherche.php), toute bete, il y un formulaire pour faire une recherche sur ma base, qui pointe vers une autre page (traitement.php).
Sur cette dernière, je parcours ma base et fais ma recherche en fonction des choix du formulaire précédent, puis je stocke tous mes résultats dans un tableau ($tabResultat). Jusque là, OK.
Après ça se corse... je dois me servir de ce tableau pour afficher les résultats, mais je dois le faire sur une autre page (resultat.php). Alors pour passer le tableau rempli de traitement.php à resultats.php, j'utilise une petite session toute bete ($_SESSION['tabResultat'] = $tabResultat ; ).
Ca marche.
SAUF QUE... si je refais une recherche sans fermer mon navigateur, en fait, sont gardés en mémoire les résultats de la recherche précédente.
Bref : comment dois-je faire ? J'ai essayé d'utiliser des unset(), des session_destroy()... j'arrive à rien!
Please heeeelp !
Et désolé d'avance, j'ai quand même pas mal cherché et tatonné sans succès...