Bonjour,
Je souhaite afficher la liste des classes dans un combobox, ainsi que les épreuves de la classe correspondante dans un autre combobox et une fois cela fait, qu'un tableau apparaisse pour pouvoir saisir les notes des élèves.
Pour l'instant, j'ai créé mes entités, la BDD, et j'arrive à afficher le cbo classe sur une page classe, le cbo epreuve sur une page epreuve mais pas les deux cbo sur la page saisie
Voici mon code :
Dans le controller :
Dans la page saisie.html.twig :
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 public function classeAction() { $em=$this->getDoctrine()->getEntityManager(); $liste=$em->getRepository('AdminBulletinBundle:classe')->findAll(); return $this->container->get('templating')->renderResponse('AdminBulletinBundle:Default:classe.html.twig',array('laListe' => $liste)); } public function epreuveAction() { $em=$this->getDoctrine()->getEntityManager(); $liste=$this->getDoctrine()->getEntityManager()->getRepository('AdminBulletinBundle:epreuve')->findAll(); return $this->container->get('templating')->renderResponse('AdminBulletinBundle:Default:epreuve.html.twig',array('laListe' => $liste)); } public function saisieAction() { $em=$this->getDoctrine()->getEntityManager(); $liste=$this->getDoctrine()->getEntityManager()->getRepository('AdminBulletinBundle:classe')->findAll(); return $this->container->get('templating')->renderResponse('AdminBulletinBundle:Default:saisie.html.twig',array('laListe' => $liste)); $em=$this->getDoctrine()->getEntityManager(); $liste2=$this->getDoctrine()->getEntityManager()->getRepository('AdminBulletinBundle:epreuve')->findAll(); return $this->container->get('templating')->renderResponse('AdminBulletinBundle:Default:saisie.html.twig',array('laListe2' => $liste2));
Dans la page epreuve.repository :
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 <html> {% include 'AdminBulletinBundle:Default:base.html.twig' %} <body> <label for="classe">Classe : </label> <select name="classe" id="classe" > {% for unEl in laListe %} <option selected="selected" >{{unEl.nom_classe}}</option> {% endfor %} </select> <label for="epreuve">Epreuve : </label> <select name="epreuve" id="epreuve" > {% for uneEp in laListe2 %} <option selected="selected" >{{uneEp.intitule_ep}}</option> {% endfor %} </select> </body> </html>
Dans la page classe.repository :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class epreuveRepository extends EntityRepository { public function listeEpreuve() { $query = $this->_em->createQuery("SELECT intitule_ep FROM AdminBulletinBundle:epreuve"); $resultat = $query->getResult(); return $resultat; } }
J'obtiens cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class classeRepository extends EntityRepository { public function listeClasse() { $query = $this->_em->createQuery("SELECT nom_classe FROM AdminBulletinBundle:classe"); $resultat = $query->getResult(); return $resultat; } }
Variable "liste2" does not exist in AdminBulletinBundleefault:saisie.html.twig at line 12
Dans mon fichier base j'appelle le controller saisie qui affiche la page saisie.html.twig et donc je peux y afficher un combobox mais jamais les 2, si quelqu'un peut m'aider ce serait sympa
Partager