web-dev-qa-db-fra.com

comment obtenir les variables de session en utilisant l'identifiant de session

J'ai l'identifiant de session de mon application. Maintenant, je veux obtenir toutes les variables de session en utilisant cet identifiant de session. 

J'ai utilisé <?php echo session_id()?> pour obtenir l'identifiant de session, mais comment obtenir toutes les valeurs d'objet de session en utilisant cet identifiant?

20
Manish Jangir

Selon php.net : Il existe plusieurs façons de divulguer un identifiant de session existant à des tiers. Un identifiant de session filtré permet au tiers d'accéder à toutes les ressources associées à un identifiant spécifique. Premièrement, les URL portant les identifiants de session. Si vous créez un lien vers un site externe, l'URL comprenant l'identifiant de session peut être stocké dans les journaux de référent du site externe. Deuxièmement, un attaquant plus actif pourrait écouter votre trafic réseau. S'il n'est pas crypté, les identifiants de session seront transmis en texte brut sur le réseau. La solution ici consiste à implémenter SSL sur votre serveur et à le rendre obligatoire pour les utilisateurs.

Cela pose la question, comment avez-vous l'ID de session sans pouvoir accéder au script? 

Quoi qu'il en soit, vous devrez définir l'ID de session puis le démarrer ... puis accéder aux données.

session_id($whatever_id_you_have);
session_start();
echo $_SESSION['somekey'];
59
Jeremy Harris

$_SESSION est ce que vous recherchez. N'oubliez pas d'appeler session_start() en premier. Voir http://php.net/session.examples.basic

1
KingCrunch

var_dump($_SESSION); vous montrera le contenu de la session en cours, vous pourrez alors accéder aux valeurs comme vous le feriez sur un tableau normal.

1
Tatu Ulmanen

Vous pouvez vérifier toutes les valeurs de session en utilisant celui-ci.

print_r($_SESSION);
0
user5808655