Supprimer variable de session après l'avoir affichée
Bonjour à tous,
Je peine à comprendre d’où vient mon problème, je vous explique :
Je tente d'afficher une alerte lorsque ma requete sql a été correctement effectuée par ma fonction dans ma classe.
Je stock donc ma variable dans une session juste avant ma redirection avec header().
J'ai ensuite une fonction qui s'occupe d'afficher mon message d'erreur.
Mon problème, c'est que la variable de session créée, est automatiquement supprimée avant même d’être affrichée.
Voila ma fonction qui initialise ma var de session
Code:
1 2 3 4 5 6 7 8
|
public function UpdateCandidat($idCandidat) {
global $key, $nomImage;
[...........] // je coupe, c'est trop long
$_SESSION['MsgSuccess'] = 'Modifications enregistrées avec succès';
header('Location:'.PAGE_CANDIDAT_EDIT);
} |
Ensuite ma fonction qui affiche le message :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
function errorBox(){
if(isset($_SESSION['MsgError'])) :
echo '<div class="notification-box notification-box-warning"><p>'.$_SESSION['MsgError'].'<p><a class="notification-close notification-close-warning" href="#">x</a></div>';
unset($_SESSION['MsgError']);
elseif(isset($_SESSION['MsgSuccess'])):
echo '<div class="notification-box notification-box-success"><p>'.$_SESSION['MsgSuccess'].'<p><a class="notification-close notification-close-success" href="#">x</a></div>';
unset($_SESSION['MsgSuccess']);
elseif(isset($_SESSION['MsgInfos'])):
echo '<div class="notification-box notification-box-info"><p>'.$_SESSION['MsgInfos'].'<p><a class="notification-close notification-close-info" href="#">x</a></div>';
unset($_SESSION['MsgInfos']);
endif;
} |
Puis l'appel de ma fonction
Code:
1 2
|
<div id="erreur"><?php errorBox();?></div> |
La variable $_SESSION[''MsgSuccess'] ne s'affiche pas, sauf si je supprime le unset($_SESSION[''MsgSuccess']) qui est censé supprimer ma variable après l'avoir affichée.
Merci pour votre aide, j'ai passé la journée dessus !