Détruire une variable dans $_SESSION

Détruire une variable dans $_SESSION - PHP - Programmation

Marsh Posté le 13-10-2004 à 13:57:59    

Voilà, pour que l'utilisateur n'ait pas à retaper le contenu d'un formulaire s'il y a eu une erreur côté serveur, je stocke les valeurs des champs dans $_SESSION.
J'ai donc une petite fonction pour sauver un champ dans $_SESSION  

Code :
  1. function saveSessionValue($Fieldname, $Value)
  2. {
  3.     $_SESSION["$Fieldname"] = $Value;
  4. }


 
et une autre pour virer le champ de $_SESSION

Code :
  1. function deleteSessionValue($Fieldname)
  2. {
  3.     unset($_SESSION["$Fieldname"]);
  4. }


 
Dans une page, je mets au début un session_start();
Puis je mets dans la suite du code des saveSessionValue() avant de faire des traitements et des deleteSessionValue(); si les traitement se sont bien passés (tout ça dans le même fichier php). Quand j'affiche le contenu de $_SESSION après des deleteSessionValue(), les champs ont bien disparus.
 
Dans une autre (ie un autre fichier php), je mets aussi un session_start(); au début et ensuite, je regarde si le champ dans $_SESSION existe. Si oui, je réaffiche, sinon, champ à vide... Mais là, les champs qui avaient été détruits sont de nouveau présents dans $_SESSION :(...
 
J'ai essayé session_write_close(), mais ça change rien. Qq'un a une idée pour résoudre mon pb? Merci beaucoup :)

Reply

Marsh Posté le 13-10-2004 à 13:57:59   

Reply

Marsh Posté le 13-10-2004 à 14:09:03    

bon, j'ai résolu mon pb. Contraierement à ce que j'ai pu trouver sur le web, unset($_SESSION["$Toto"]); et session_unregister("$Toto" ); ne sont pas équivalentes!  
ps : $Toto contient le nom de la variable à supprimer dans $_SESSION

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed