Итак, я обрезаю изображение и отправляю его в Symfony Controller …
$(document).ready(function(){
$image_crop = $('#image_demo').croppie({
enableExif: true,
viewport: {
width:200,
height:200,
type:'square'
},
boundary:{
width:300,
height:300
}
});
$('#upload_image').on('change', function(){
var reader = new FileReader();
reader.onload = function (event) {
$image_crop.croppie('bind', {
url: event.target.result
}).then(function(){
console.log('jQuery bind complete');
});
}
reader.readAsDataURL(this.files[0]);
$('#uploadimageModal').modal('show');
});
$('.crop_image').click(function(event){
$image_crop.croppie('result', {
type: 'canvas',
size: 'viewport'
}).then(function(response){
$.ajax({
url: "{{ path('app_bundle_route') }}",
type: "POST",
data: {'img': response},
processData: false,
contentType: false,
cache: false,
success: function(data){
$('#uploadimageModal').modal('hide');
$("#previewImg").attr('src', response);
}
});
});
});
});
контроллер
$file = $request->files->get('img');
$fileName = md5(uniqid()).'.'.$file->guessExtension();
$file->move($this->getParameter('image_directory'), $fileName);
$imageEn->setImage($file);
$em->persist($imageEn);
$em->flush();
Я сделал ошибку в чем-то? Я пытаюсь опубликовать изображение из Ajax в Symfony 4, но кажется, что контроллер не может получить файл изображения, отправленный из Ajax.
Может кто-нибудь помочь мне с тем, как я должен отправить изображение с Ajax на контроллер?
Задача ещё не решена.
Других решений пока нет …