Retour en haut

[PHP] Utiliser les sessions juste avant un appel à header('Location: ...')

posté le jeudi 7 avril 2011 à 16:48:44 par delphiki :: Web

Si vous avez déjà eu à faire à ce cas de figure, où vous devez définir une variable de session juste avant un appel à la fonction header() pour changer de page (header('Location: ...');), alors vous avez sans doute remarqué qu'une fois arrivé sur la page, vous n'avez plus aucune trace de votre variable de session !

Pour palier à ce petit problème, il suffit de rajouter à votre URL l'id de la session grâce à la constante SID, comme suit :

<?php
$_SESSION['foo'] = 'bar';

header('Location: mypage.php'.SID);


Commentaires :

# X4D34th, le jeudi 7 avril 2011 à 17:15:59

Si on a accès à la config de PHP, on peut aussi faire en sorte qu'il mette le SID en cookie.

 
# delphiki, le jeudi 7 avril 2011 à 17:51:24

Exact, mais le mieux reste quand même de rester indépendant au maximum de la configuration serveur :)

 
# Hennek, le samedi 9 avril 2011 à 03:39:46

Tiens, deux semaines plutôt ça aurait été génial cette petite astuce. Ici, j'ai du m'en passer en trouvant un système alternatif ;)
Merco ;)

 
# delphiki, le lundi 11 avril 2011 à 09:22:11

Je t'en prie :)

Désolé d'arriver trop tard ^^

 
Ajouter un commentaire