hello j'ai un formulaire
Code twig : 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
26
27
28
29
30
31 <form class="form-group" id="form{{manger.id}}" action="{{ path('thematique_reponse') }}" method="POST"> <div class="reponse"> <div class="question-alimentation"> <p><i>-{{manger.questions}}</i></p>{#<----ma question--#} </div> <label for="{{manger.niveau1}}{{manger.id}}">{{manger.niveau1}}<input type="radio" class="eat" name="{{manger.id}}" id="{{manger.niveau1}}{{manger.id}}" /></label><br><br> <label for="{{manger.niveau2}}{{manger.id}}">{{manger.niveau2}}<input type="radio" class="eat" name="{{manger.id}}" id="{{manger.niveau2}}{{manger.id}}" /></label><br><br> <label for="{{manger.niveau3}}{{manger.id}}">{{manger.niveau3}}<input type="radio" class="eat" name="{{manger.id}}" id="{{manger.niveau3}}{{manger.id}}" /></label><br><br> <label for="{{manger.niveau4}}{{manger.id}}">{{manger.niveau4}}<input type="radio" class="eat" name="{{manger.id}}" id="{{manger.niveau4}}{{manger.id}}" /></label><br><br> <label for="{{manger.niveau5}}{{manger.id}}">{{manger.niveau5}}<input type="radio" class="eat" name="{{manger.id}}" id="{{manger.niveau5}}{{manger.id}}" /></label><br><br> <label for="{{manger.niveau6}}{{manger.id}}">{{manger.niveau6}}<input type="radio" class="eat" name="{{manger.id}}" id="{{manger.niveau6}}{{manger.id}}" /></label><br><br> </div> </form> <div id="button{{manger.id}}" class="btn-valider"> <button type="submit" id="suivant{{manger.id}}" data-numero="{{manger.numquestion}}" class="suivant" data-formulaireid="form{{manger.id}}">Valider</button>
au clique sur bouton valide je suis redirigé ver mon contrôleur
Déja je fais une requete ajax tous se pass bien a chaque fois je clique sur une reponse j'ai une ligne de plus dans ma bdd..sauf que value reste a NULL..
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
26
27
28
29
30
31
32
33
34
35
36
37
38 class DefaultController extends Controller { /** * @Route("/Reponse/thematique", name="thematique_reponse") * @Method({"GET", "POST"}) */ public function reponseThematique(Request $request) { $userSlpRepo = $this->getDoctrine()->getRepository(UserSlp::class);// $reponseThematiqueRepo = $this->getDoctrine()->getRepository(Reponse_thematique::class);//mon entité ou je vais enregistrer mes réponses lié a la question et l'user $questionMangerRepo = $this->getDoctrine()->getRepository(Manger::class);//mon entité qui contient toute les questions mais aussi d'autre parametre (colonnes) $em = $this->getDoctrine()->getManager();//entité manager $userSlp = $userSlpRepo->findOneByGaeaUserId($this->getUser()->getId());//je récupérè le user connecté pour pouvoir enregistrer son Id dans l'entité "réponse thématique". $datas = $request->request->all();//récupéré les requêtes que j'aurais posté foreach ($datas as $data => $value){ $questionId = explode("_", $data); $question = $questionMangerRepo->find($questionId[0]); $answer = new Reponse_thematique; $answer->setManger($question); //ok recuper bien l'id de la question $answer->setValue($value); //impossible d'enregistrer quoi que ce soit $answer->setUserSlp($userSlp); //ok recuper bien l'id du user $em->persist($answer); $em->flush(); } exit; }
je sais pas si c'est comme cela qu'il faut faire mais bon voila je fais un foreach sur les donnés POST et a travers un explode j'essaie de récupérer les valeurs du input je sais pas si c'est comme cela qu'il faut faire.... je voudrais enregistré la réponse du user sachant que chaque label est une réponse l'id de la question et user id s'enregistre bien mais pas de valeur du input qui peut m'expliquer..
ici mon entité mange ou se trouve les questions
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
26
27
28
29
30
31
32
33
34
35
36
37
38 class Manger { /** * @var int * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @var string|null * * @ORM\Column(name="Sous_processus", type="string", length=30, nullable=true) */ private $sousProcessus; /** * @var string|null * * @ORM\Column(name="Theme", type="string", length=89, nullable=true) */ private $theme; /** * @var string|null * * @ORM\Column(name="Sous_theme", type="string", length=110, nullable=true) */ private $sousTheme; /** * @var string|null * * @ORM\Column(name="Questions", type="string", length=191, nullable=true) */ private $questions;
ici mon entité reponse_thematique
voila ce que j'ai en bdd...value null manque quoi? une relation? merci de m'aider je suis en pleine découverte du framework
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
26
27
28
29
30
31 class Reponse_thematique { /** * @var int * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * * @ORM\ManyToOne(targetEntity="AppBundle\Entity\UserSlp", inversedBy="Reponse_thematiques") * @ORM\JoinColumn(name="user_slp_id", referencedColumnName="id") */ private $userSlp; /** * @ORM\ManyToOne(targetEntity="Manger") * @ORM\JoinColumn(name="manger_id", referencedColumnName="id") */ private $manger; /** * @var int|null * * @ORM\Column(name="value", type="integer", nullable=true) */ private $value;
![]()
Partager