- 1
[Opened] problème avec getUserSession suite à migration de 1.4 à 1.5
Posted by tatoun59 on 06/16/2014 16:18
Bonjour,
J'ai migré mon site de la version 1.4.5 vers la 1.5.3.
Dans le constructeur de mon contrôleur, je définis une variable publique $uid que j'utilise dans les différentes fonctions de ma classe. En 1.4, pas de problème, cela fonctionne bien. Par contre, en 1.5, ma variable $uid reste vide alors que mon authentification s'est bien passée (je vois dans la debugbar que je récupère bien mon identifiant dans JELIX_USER)
class defaultCtrl extends jController { public $uid; function __construct($request) { parent::__construct($request); // ici, cela ne marche pas $user = jAuth::getUserSession(); $this->uid = $user->login; } function index() { //ici, ça marche $user = jAuth::getUserSession(); $this->uid = $user->login; ... }
Pourquoi jAuth::getUserSession() ne fonctionne plus dans mon constructeur en 1.5.3 ? A moins que mon problème ne vienne de php car je suis également passé de php 5.2 à 5.4
Merci pour votre aide
[Opened] problème avec getUserSession suite à migration de 1.4 à 1.5
Posted by laurentj on 06/23/2014 15:58
Bonjour,
Effectivement il y a un changement non documenté dans Jelix 1.5 : les variables de sessions ne sont récupérées (session_start) qu'après l'instanciation du contrôleur, et non avant comme c'était le cas dans jelix 1.4. Faudrait que j'investigue si ce changement est volontaire et pourquoi (ça fait longtemps ;)).
Maintenant, tu peux faire directement un jAuth::getUserSession()->login
dans tes contrôleurs plutôt que d'avoir une propriété...
[Opened] problème avec getUserSession suite à migration de 1.4 à 1.5
Posted by laurentj on 06/23/2014 16:16
https://github.com/jelix/jelix/issues/166
- 1