Bonjour,

voilà j'ai un problème avec mon formulaire sous symfony.
J'ai fait un formulaire pour pouvoir afficher une liste déroulante dans ma page web et en fonction du choix de l'utilisateur, cela filtre les résultats. Enfin c'est ce qu'il devrait se passer normalement sauf que lorsque je valide mon choix dans la liste, il ne se passe rien ! et d'après le profiler "this form was not submitted".

voici mon code dans le controller :

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 
<?php
 
namespace fac\CoreBundle\Controller;
 
use Symfony\Component\HttpFoundation\Request;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use fac\CoreBundle\Entity\Application;
 
/**
 * Application controller.
 *
 * @Route("/application")
 */
class ApplicationController extends Controller {
 
    /**
     * Lists all Application entities.
     *
     * @Route("/", name="application")

     * @Template()
     */
    public function indexAction(Request $request) {
 
        $form = $this->listAction();
        $form->handleRequest($request);
 
        $em = $this->getDoctrine()->getManager();
 
        if ($form->isValid()) {
            echo'hello';
            $zoned = $form['idZone']->getData();
 
            $entities = $em->getRepository('CoreBundle:Application')->recupAppliZone($zoned);
            return $this->redirect($this->generateUrl('application'));
        } else {
            echo 'coucou';
            $entities = $em->getRepository('CoreBundle:Application')->findAll();
        }
        return array(
            'entities' => $entities,
            'form' => $form->createView(),
        );
    }
 
    public function listAction() {
        $appli = new Application();
        $form = $this->createFormBuilder($appli)
                ->add('idZone')
                ->getForm();
        return $form;
    }
 
}

voici celui de 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
 
{% extends '::base.html.twig' %}
 
{% block body -%}
    <h1>Application list</h1>
 
 
    <table >
        <thead>
 
            {{ form_start(form) }}
            {{ form_widget(form) }}
        <input type="submit" />
        {{ form_end(form) }}
 
        <tr>
            <th>Idappli</th>
            <th>Nomappli</th>
            <th>Description</th>
            <th>zone</th>
 
        </tr>
    </thead>
    <tbody> 
 
        {% for entity in entities %}
            <tr>
                <td>{{ entity.idAppli }}</td>                    
                <td>{{ entity.nomAppli }}</td>
                <td>{{ entity.description }}</td>
                <td>{{ entity.idZone }}</td>
 
 
            </tr>
        {% endfor %}
 
 
    </tbody>
</table>
 
 
{% endblock %}
en gros, au départ, j'ai un listing des applications toutes confondues. ce que je veux faire c'est donc en fonction d'une zone sélectionnée, n'afficher que les applications concernées.

je ne comprend pas ce que je fais de travers, si vous pouviez m'éclairer ce serait très gentil !!!