Bonjour a tous
Le problème : Je voudrais récupérer une image dans la fonction 'success' d'un appel Ajax en jQuery. Bien que largement traité sur le web je n'ai pas trouvé l'erreur qui me bloque.
Le code jQuery
Le code php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $.ajax({ type: "POST", datatype: "image/jpeg", url: pathImg, data: { rep: param.imgPath+nomImg,lgMax: 100}, cache: false, success: function(img){ var imgMini =document.createElement('img'); imgMini.src =img; item.appendChild(imgMini); // item est un div déjà ajouté au DOM } });
Pour lever toute ambiguïté sur l'accès au php et le retour dans Ajax, j'ai fait un test en mettant "return new response("TOTO");" dans mon script PHP et je reçois bien "TOTO" dans la fonction success de mon appel Ajax.
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 public function LireImageAction(){ $request = $this->container->get('request'); $u ='PASAJAX'; if($request->isXmlHttpRequest()){ $repImg =$request->request->get('rep'); $lgImg =$request->request->get('lgMax'); $imgO = imagecreatefromjpeg($repImg); $lgO = imagesx($imgO); $htO = imagesy($imgO); $htImg = $htO * $lgImg / $lgO; $imgF = imagecreate($lgImg, $htImg); imagecopyresized($imgF, $imgO, 0, 0, 0, 0, $lgImg, $htImg, $lgO, $htO); return new response($imgF); } return new response($u); }
C'est pour ça que je pense qu'il y a un problème de format de la réponse, soit au niveau de l'émission (PHP) soit au niveau de la reception (jQuery).
Quelqu’un a-t-il une idée ?
Merci de vos réponses.
YC
Partager