J'ai cette fonction lorsque je modifie le fichier de type d'entrée pour insérer dans la base de données, à Laravel. me retourne toujours " Invocation illégale forte>" et je mets processdata: faux code> et ne fonctionne pas pour moi parce que ne le faites pas Insérer, à Laravel j'ai besoin d'un hachage de base64 pour insérer un fichier. p> p>
3 Réponses :
sans voir votre HTML, nous ne pouvons pas vraiment dire. Mais je pense que vous définissez galeria_imagen code> en tant que nom
Nom code> pas un
ID code>, de sorte que cela ne vous mène nulle part. De plus, lorsque vous êtes à l'intérieur d'un gestionnaire, le contexte code> est en réalité l'élément lui-même, de sorte que vous puissiez simplement faire
ceci.files [0] code>.
$(document).on('change', 'input[name="galeria_imagen"]', function() {
var elab = $('#elaboracion_ins').val();
var formdata = new FormData();
formdata.append(this.name, this.files[0]);
$.ajax({
type: 'POST',
url: "/admin/elaboraciones/ajax/setGaleria",
processData: false,
data: formdata,
success: function() {
recargar_galeria(elab);
}
});
});
Ajouter Multipart / Form-Data comme type MIME
$(document).on('change', '#galeria_imagen', function () { var elab = $('#elaboracion_ins').val(); var formdata = new FormData(); formdata.append("galeria_imagen", $('input[name=galeria_imagen]')[0].files[0]); console.log(prueba); $.ajax({ type: 'POST', url: "/admin/elaboraciones/ajax/setGaleria", mimeType: "multipart/form-data", processData: false, contentType: false, data: formdata, success: function () { recargar_galeria(elab); } }); });
Voici un plaque de chaudière qui fonctionne - voir http://jsfiddle.net/09O71YJC/
$('form.uploader input:file').on('change', function() { var data = new FormData(); data.append('file', this.files[0]); $.ajax({ url: $('.uploader').attr('action'), type: 'POST', dataType: 'json', processData: false, data: data, success: function () { alert('Uploaded') } }); });
S'il vous plaît poster le code de formulaire HTML aussi bien