Bonjour,
j'essaie d'envoyer des fichiers vers le serveur en créant des traces sur ces opérations.
En méthode post , pas de sourcil . Par contre avec ajax , pas d'exception mais ça marche plus !!
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 if ($request->isXmlHttpRequest()) { $form->handleRequest($request); if ($form->isValid()) { if ($enable) { /* * ************************************** BEGIN TRANSACTION ******************************************** */ $em->getConnection()->beginTransaction(); //// optionnel try { $form->bind($request); $this->get('Traces')->CreeTracesEnvoiFichiers($Societe); $this->get('UploadFile')->UploadFile($Societe); $em->getConnection()->commit(); //// optionnel } catch (\Exception $e) { //// optionnel $em->getConnection()->rollback(); //// optionnel $em->close(); //// optionnel throw $e; //// optionnel } return $this->container->get('templating')->renderResponse('AppGestionBundle:Default/index.html.twig'); } } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <form id="upload" method="post" action='{{path('envoifichier')}}' enctype="multipart/form-data" class="form-horizontal"> // </form>Dans ma console , je vois 'beforeSend' ensuite 'success' mais pas defichiers copiés et pas de trace dans la bdd !!
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 <script src="{{ asset('bundles/espritappgestion/js/jquery-ajax/jqueryajax.min.js') }}" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#upload").submit(function (e) { e.preventDefault(); $.ajax({ type: 'post', url: "{{path('envoifichier') }}", data: $(this).serialize(), datatype: "json", cache: false, beforeSend: function () { console.log('beforeSend'); }, success: function (data) { console.log('success'); }, error: function () { console.log('errors'); } }); return false; }); }); </script>
merci d'avance,
Partager