Récupérer des données de session avec un script eID

Publié le

J’ai rédigé il y a deux ou trois posts ci-dessous un tutoriel sur les scripts eID dans TYPO3. Je souhaitais aujourd’hui ajouter une information qui me paraissait intéressante, vu que je travaille actuellement avec ce genre de script couplé à Jquery. Ca pourrait éclairer d’ailleurs certaines personnes.

Je construis actuellement un formulaire avec un élément de formulaire de type select. Ce que j’aimerais faire : une modification du select (on déroule simplement pour voir la liste des options possibles) ajoute telle ou telle option en dessous du select pour simuler une pseudo validation sans soumettre le formulaire. On pourrait également supprimer chaque option avec un clic sur une croix devant chaque option retenue. Comme je travaille également avec les sessions, la prise en charge de celles-ci me parait utile. Pour l’événement de type onchange, j’utilise la fonction change de Jquery. Enfin, pour mon script eID, je dois utiliser une méthode bien spécifique de l’API TYPO3 : getKey().

Je ne peux pas utiliser directement la ligne suivante :

$GLOBALS[‘TSFE’]->fe_user->getKey(‘ses’, ‘tableaudesession’);

sous peine d’avoir l’erreur suivante : Fatal error:  Call to a member function getKey() on a non-object in /var/www/path/to/script…. […]

Rien d’anormal… La classe n’est pas instanciée dans mon script eID comme l’indique l’erreur ci-dessus.

La solution est simple :

// Instanciation de la classe tslib_eidtools
$user = tslib_eidtools::initFeUser();

// Debug

print_r(‘<pre>’);
print_r($user->getKey(‘ses’, ‘tableaudesession’));
print_r(‘</pre>’);

Je récupère enfin mes données de session. Voilà 🙂

 

Publicités