Bonsoir, j'ai beau lire les différents tuto présent sur le net mais je n'arrive pas à résoudre mon problème.
J'ai un formulaire de connexion géré par FosUserBundle. Je souhaite récupéré dans un controller situé plus loin dans l'arborescence de se site, le nom d'une personne que je récupère dans une bdd suivant le login tapé.
En ce qui concerne le coté SQL de la chose, aucun souci. Le souci interviens quand je souhaite récupéré cet variable de session et l'affiché dans ma vue.
Voilà le code que j'ai placé dans loginController :
Et voilà à quoi correspond le bout de code à l'intérieur mon controller pour récupérer puis passer la variable dans ma vue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public function loginAction() { $session = new Session (); $session->start(); $request = Request::createFromGlobals(); $login = $request->request->get('_username'); \mysql_connect('localhost', 'root','') or die('Erreur de connexion SQL'); \mysql_select_db('test') or die('Erreur de connexion à la bdd'); $req = mysql_query("SELECT nom FROM user WHERE username = '$login'"); $rep = mysql_fetch_assoc ($req); $session->set('nom', $rep['nom']); // get the login error if there is one if ($this->container->get('request')->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) { $error = $this->container->get('request')->attributes->get(SecurityContext::AUTHENTICATION_ERROR); } else { $error = $this->container->get('request')->getSession()->get(SecurityContext::AUTHENTICATION_ERROR); } return $this->container->get('templating')->renderResponse('FormLoginBundle:Login:login.html.twig', array( // last username entered by the user 'last_username' => $this->container->get('request')->getSession()->get(SecurityContext::LAST_USERNAME), 'error' => $error, )); }
Le souci c'est qu'il ne s'affiche rien dans ma vue :/
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $request = $this->getRequest(); $session = $request->getSession(); $nom = $session->get('nom');
Partager