Bonjour,
J'essaie de faire un formulaire basique d'upload de fichier CSV avec Symfony mais sans utiliser de Form builder et j'avoue que ça coince.

Voici mon php MyBundle/Dafulet:import :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
class DefaultController extends Controller
{
    public function importAction(Request $request)
    {
        return $this->render('MyBundle:Default:import.html.twig', array('post'=>$_POST,
                                                                         'files'=>$_FILES,
                                                                         'request'=>$request));
    }
}
Voici mon formulaire (import.html.twig):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
{{dump(post)}}
{{dump(files)}}
{{dump(request)}}
<form id="import-csv" method="post" enctype="multipart/form-data" action="{{path('csv_import')}}">
	<fieldset>
		<input type="file" id="file" name="file" accept=".csv" id="fileinput">
		<input type="submit" value="Importer" >
	</fieldset>
</form>
Ma route:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
csv_import:
    path:     /import
    defaults:
        _controller: MyBundle:Default:import
Lorsque je sélectionne un fichier et que j'appuie sur "Importer", les dumps dans mon fichier twig me disent que $_POST et $_FILES sont vides.
Lorsque je rajoute un champ standatd type="hidden" ou type="text", je le récupère bien dans mon $_POST mais l'ulpload de fichier ne fonctionne absolument pas.
Le paramètres FileBag de la requête reste lui aussi désespérément vide
Y aurait-il quelque chose que j'aurais manqué dans les basiques de basiques ?
Merci d'avance
RV