[Symfony 3.2.2] Submit form ne fonctionne pas
patrice86
Messages postés
1380
Date d'inscription
Statut
Membre
Dernière intervention
-
patrice86 Messages postés 1380 Date d'inscription Statut Membre Dernière intervention -
patrice86 Messages postés 1380 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis entrain de développer une application web en utilisant Symfony 3.2.2.
J'ai créer un FormType avec un champ save dans la méthode buildForm() :
Dans mon template twig, j'affiche le bouton save :
Lorsque je clique sur le bouton save (qui est bien un button type="submit" en html si je regarde le code source la page, rien ne se passe. Le bouton clique dans le vide.
J'ai essayé en utilisant form_widget(form.save) mais ça ne change rien.
Pas besoin de spécifier d'action dans l'ouverture du form, symfony redirige automatiquement le formulaire vers l'url qui l'a appelé si il n'y pas d'action définie. (cf: doc de symfony).
Des idées ?
Merci :)
Je suis entrain de développer une application web en utilisant Symfony 3.2.2.
J'ai créer un FormType avec un champ save dans la méthode buildForm() :
->add('save', SubmitType::class);
Dans mon template twig, j'affiche le bouton save :
{{ form_start(form) }}
{{ form_row(form.save) }}
{{ form_end(form) }}
Lorsque je clique sur le bouton save (qui est bien un button type="submit" en html si je regarde le code source la page, rien ne se passe. Le bouton clique dans le vide.
<button type="submit" id="meeting_save" name="meeting[save]">Create</button>
J'ai essayé en utilisant form_widget(form.save) mais ça ne change rien.
Pas besoin de spécifier d'action dans l'ouverture du form, symfony redirige automatiquement le formulaire vers l'url qui l'a appelé si il n'y pas d'action définie. (cf: doc de symfony).
Des idées ?
Merci :)
A voir également:
- Form validation failed instagram
- Télécharger instagram pc - Télécharger - Divers Communication
- Brouillon instagram - Guide
- Créer un compte instagram sur google - Guide
- Qui regarde mon profil instagram - Guide
- Supprimer compte instagram - Guide
2 réponses
Salut,
La balise form est-elle correctement générée ?
As tu des erreurs de syntaxe html ? (https://validator.w3.org/)_As tu des erreurs dans la console de développement de ton navigateur ?
Bonne journée,
La balise form est-elle correctement générée ?
As tu des erreurs de syntaxe html ? (https://validator.w3.org/)_As tu des erreurs dans la console de développement de ton navigateur ?
Bonne journée,
Voici le fichier HTML généré au complet (un peu long...)
<!DOCTYPE html> <html ng-app="fwpApp"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="author" content="FIME SAS"> <link rel="shortcut icon" href="/favicon.ico"> <title>Domi'Gestion</title> <link rel="stylesheet" href="/assets/css/bundled.css"/> <!--[if lt IE 9]> <![endif]--> </head> <body> <nav class="navbar navbar-default navbar-fixed-top" role="navigation"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <img src=""quot;"quot; /assets/images/logo-white.png" class="img-responsive col-xs-2 col-sm-3 col-md-3"> </div> <div class="collapse navbar-collapse" > <ul class="nav navbar-nav"> <li class=""><a href="/app_dev.php/" rel="nofollow noopener noreferrer" target="_blank"><span class="icon-dashboard"></span>Dashboard</a></li> <li class="dropdown"> <a href="#" rel="nofollow noopener noreferrer" target="_blank" class="dropdown-toggle" data-toggle="dropdown"><span class="icon-icon-rh"></span>Carnet clients</a> <ul class="dropdown-menu" role="menu"> <li><a href="/app_dev.php/customer/" rel="nofollow noopener noreferrer" target="_blank"><i class="icon-address-book"></i>Tous les clients</a></li> <li class="divider"></li> <li><a href="/app_dev.php/customer/add" rel="nofollow noopener noreferrer" target="_blank">Ajouter un client</a></li> </ul> </li> <li class="dropdown"> <a href="#" rel="nofollow noopener noreferrer" target="_blank" class="dropdown-toggle" data-toggle="dropdown"><span class="icon-icon-project"></span>Réunions</a> <ul class="dropdown-menu" role="menu"> <li><a href="/app_dev.php/meeting/" rel="nofollow noopener noreferrer" target="_blank">Toutes les Réunions</a></li> <li class="divider"></li> <li><a href="/app_dev.php/meeting/add" rel="nofollow noopener noreferrer" target="_blank">Ajouter une réunion</a></li> </ul> </li> </ul> <form class="navbar-form navbar-left" role="search"> <div class="input-group form-search"> <input type="text" id="searchForm" class="form-control search-query" autocomplete="off" placeholder="Rechercher" fwp-autocomplete fwp-autocomplete-url-source="/app_dev.php/search/customer/url/*searchString*"> </div> </form> <ul class="nav navbar-nav navbar-right"> <li class="dropdown"> <a href="#" rel="nofollow noopener noreferrer" target="_blank" class="dropdown-toggle" data-toggle="dropdown"><span class="account">Bonjour kevin</span></a> <ul class="dropdown-menu" role="menu"> <li><a href="/app_dev.php/profile/" rel="nofollow noopener noreferrer" target="_blank"><i class="icon-cog"></i>Configuration</a></li> <li class="divider"></li> <a href="/app_dev.php/logout" rel="nofollow noopener noreferrer" target="_blank"><i class="icon-lock"></i>Déconnexion</a> </ul> </li> </ul> </div> </div> </nav> <div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main"> </div> <ol class="breadcrumb"> <li class="active"><a href="/app_dev.php/customer/" rel="nofollow noopener noreferrer" target="_blank">Liste des clients</a></li> <li class="active">Ajouter une nouvelle réunion</li> </ol> <div id="fwp-content" class="col-md-12"> <div class="row"> <div class="col-md-4 col-md-offset-1"> <h2>Ajouter une nouvelle réunion</h2> </div> </div> <div class="container panel panel-body"> <form name="meeting" method="post"> <div class="col-md-12"> <div class="col-md-10 col-md-offset-1 panel panel-body panel-content panel-info"> <div class="panel-heading"> <h4 class="center">Informations globales</h4> </div> <div class="panel-body"> <div class="row"> <div class="col-md-3"> <h6><label for="meeting_date" class="required">Date</label></h6> </div> <div class="col-md-7"> <div class="input-group date"> <input type="text" id="meeting_date" name="meeting[date]" required="required" class="form-control" /><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span> </div> </div> </div> <div class="row"> <div class="col-md-3"> <h6><label for="meeting_customer" class="required">Hôtesse</label></h6> </div> <div class="col-md-7"> <select id="meeting_customer" name="meeting[customer]"><option value="2">ARTUS Kévin</option><option value="1">CHARLèNE Van Wynsberghe</option></select> </div> </div> <div class="row"> <div class="col-md-3"> <h6><label for="meeting_address">Adresse</label></h6> </div> <div class="col-md-7"> <input type="text" id="meeting_address" name="meeting[address]" /> </div> </div> <div class="row"> <div class="col-md-3"> <h6><label for="meeting_cp">Code Postal</label></h6> </div> <div class="col-md-7"> <input type="text" id="meeting_cp" name="meeting[cp]" /> </div> </div> <div class="row"> <div class="col-md-3"> <h6><label for="meeting_city">Ville</label></h6> </div> <div class="col-md-7"> <input type="text" id="meeting_city" name="meeting[city]" /> </div> </div> <div class="row"> <div class="col-md-3"> <h6><label for="meeting_nbKm">Nombre de KM</label></h6> </div> <div class="col-md-7"> <input type="text" id="meeting_nbKm" name="meeting[nbKm]" /> </div> </div> <div class="col-md-11"> <div class="col-md-2 right"> <button type="submit" id="meeting_save" name="meeting[save]">Create</button> </div> </div> </div> </div> </div> <input type="hidden" id="meeting__token" name="meeting[_token]" value="E5mVuaHcz6-Nf0Hydr3-GSreV-Ns_NSCqdn_0OrODHk" /> </form> </div> <script type="text/javascript" src=""quot;"quot;/assets/js/bundled.min.js"></script> <div id="sfwdt33e73b" class="sf-toolbar sf-display-none"></div>< </body> </html>
Sur mon poste ton formulaire envoi bien les données sans problèmes.
Par contre je n'ai pas les scripts du fichier bundled.min.js, le problème vient p-e d'une instruction de ce fichier.
Est-ce que ton formulaire fonctionne si tu désactive temporairement l'utilisation de ce script ?
Comme tu peux le voir également sur la validateur w3c, tu as quelques erreurs de syntaxe html, notamment :
- tu as un caractères "<" en trop juste avant la fermeture </body>
- le lien logout devrait être inclus dans un <li> et pas être un enfant direct de la balise <ul>
- le div id="fwp-content" n'est pas fermé
Bien que ces erreurs n’empêchait pas le formulaire de fonctionner chez moi, il est toujours mieux de les corriger.
Par contre je n'ai pas les scripts du fichier bundled.min.js, le problème vient p-e d'une instruction de ce fichier.
Est-ce que ton formulaire fonctionne si tu désactive temporairement l'utilisation de ce script ?
Comme tu peux le voir également sur la validateur w3c, tu as quelques erreurs de syntaxe html, notamment :
- tu as un caractères "<" en trop juste avant la fermeture </body>
- le lien logout devrait être inclus dans un <li> et pas être un enfant direct de la balise <ul>
- le div id="fwp-content" n'est pas fermé
Bien que ces erreurs n’empêchait pas le formulaire de fonctionner chez moi, il est toujours mieux de les corriger.
La balise form est correctement générée :
Avec à l'intérieur le bouton de type input et la balise pour fermer le form
C'est normal si dans la balise form, l'attribut action ne soit pas défini ???
Il me semble qu'on peut omettre cette attribut à condition que le script qui va traiter le formulaire soit le même qui a généré le dit formulaire.
As tu des erreurs de syntaxe html et/ou des erreurs javascript ?
Peux t-on voir le code html complet de ta page ?