Variable de session

Eléphanteau du PHP | 11 Messages

26 avr. 2012, 17:23

Bonjour,

Je souhaite pouvoir récupérer des valeurs contenu dans les variables de sessions, celle que je crée, j'y arrive, mais celle que j'ai pas créé me semble assez complexe:

Pour afficher mes variables de session, j'ai fais :
print_r($_SESSION);
ça m'affiche:
  • Array ( [SESSION] => stdClass Object ( [navcache] => stdClass Object ( [navigation] => Array ( [course_sections_1] => Array ( [0] => 1335451736 [1] => 3 [2] => a:1:{i:0;O:8:"stdClass":9:{s:7:"section";s:1:"0";s:2:"id";s:2:"12";s:6:"course";s:1:"1";s:4:"name";N;s:7:"summary";s:0:"";s:13:"summaryformat";s:1:"1";s:8:"sequence";s:4:"8,27";s:7:"visible";s:1:"1";s:12:"hasactivites";b:1;}} ) [course_activites_1] => Array ( [0] => 1335451736 [1] => 3 [2] => a:2:{i:8;O:8:"stdClass":11:{s:7:"section";s:1:"0";s:4:"name";s:7:"Brèves";s:4:"icon";s:0:"";s:13:"iconcomponent";s:0:"";s:2:"id";s:1:"8";s:6:"hidden";b:0;s:7:"modname";s:5:"forum";s:8:"nodetype";i:0;s:7:"onclick";s:0:"";s:3:"url";s:56:"http://moodle.dev.collegia.qc.ca/mod/fo ... s:12:"TEST block 1";s:4:"icon";s:0:"";s:13:"iconcomponent";s:0:"";s:2:"id";s:2:"27";s:6:"hidden";b:0;s:7:"modname";s:4:"page";s:8:"nodetype";i:1;s:7:"onclick";s:0:"";s:3:"url";s:56:"http://moodle.dev.collegia.qc.ca/mod/pa ... splay";b:1;}} ) [userblogoptions3] => Array ( [0] => 1335451736 [1] => 3 [2] => a:2:{s:4:"view";a:2:{s:6:"string";s:22:"Voir tous mes articles";s:4:"link";O:10:"moodle_url":9:{s:9:"*scheme";s:4:"http";s:7:"*host";s:25:"moodle.dev.collegia.qc.ca";s:7:"*port";s:0:"";s:7:"*user";s:0:"";s:7:"*pass";s:0:"";s:7:"*path";s:15:"/blog/index.php";s:16:"*slashargument";s:0:"";s:9:"*anchor";N;s:9:"*params";a:1:{s:6:"userid";s:1:"3";}}}s:3:"add";a:2:{s:6:"string";s:18:"Ajouter un article";s:4:"link";O:10:"moodle_url":9:{s:9:"*scheme";s:4:"http";s:7:"*host";s:25:"moodle.dev.collegia.qc.ca";s:7:"*port";s:0:"";s:7:"*user";s:0:"";s:7:"*pass";s:0:"";s:7:"*path";s:14:"/blog/edit.php";s:16:"*slashargument";s:0:"";s:9:"*anchor";N;s:9:"*params";a:1:{s:6:"action";s:3:"add";}}}} ) [contexthasrepos15] => Array ( [0] => 1335451736 [1] => 3 [2] => b:0; ) ) ) [calendarshoweventtype] => 15 [logincount] => 0 [admin_critical_warning] => 0 [load_navigation_admin] => 1 )


...... et pleins d'autres variables...certaines sont facile à récupérer mais la je bloque

et je voudrais récupérer la dernière variable de session qui s'affiche le " load_navigation_admin"
Comment faire ? merci de votre aide :roll:

ViPHP
xTG
ViPHP | 7331 Messages

26 avr. 2012, 18:34

echo $_SESSION['load_navigation_admin'];
Encadrer le retour de print_r() par des balises <pre> t'aurait formaté le résultat et tu t'en serais sorti tout seul. ;)

Eléphanteau du PHP | 11 Messages

26 avr. 2012, 19:23

Très bonne astuce pour la balise <pre> :D
Du coup j'ai pu voir la structura du tableau, parfait !

J'ai essayé de faire:
        echo "<br><br><br>Début du TEST <br>";
		
		echo $SESSION->load_navigation_admin."<br>";
		echo $SESSION->load_navigation_admin."<br>";
		
		echo $SESSION->calendarshoweventtype."<br>";
		echo $SESSION->logincount."<br>";
		
		//echo $SESSION->load_navigation_admin;
	echo "Fin du TEST<br><br><br><br><br>";
et sinon je ne sais pas pourquoi mais
echo $_SESSION['load_navigation_admin'];
ça ne marche pas, pourtant sur les variables de sessions que je crée c'est de cette façon dont je les affiche..

ViPHP
xTG
ViPHP | 7331 Messages

27 avr. 2012, 08:07

Ce n'est pas un objet mais un array.
Par contre oui dedans il y a un objet dans l'index SESSION.
Mais les variables que tu tentes de lire sont dans des index de l'array.
Affiches nous $_SESSION avec pre qu'on vérifie (j'avoue que je me suis pas amusé à compter le nombre de parenthèses).