사용자가 사용자 아바타를 업데이트하고 프로필을 수정할 수있는 양식이 있습니다. 그것은 그대로, 그것은 잘 작동, 사용자가 자신의 사진을 선택하고 잘 업로드합니다.Ajax로 수정 된 이미지 업로드
하지만 업로드하기 전에 사진을 수정하고 필요에 따라 자르기 및 회전을 적용하고 싶습니다. 수정 작업이 정상적으로 처리되었습니다. 문제는 사용자가 선택한 파일을 수정 된 파일로 대체하는 방법입니다.
FormData 객체에 입력 이름과 파일 데이터를 추가하려했지만 여전히 사용자 지정 이미지를 사용하고 있습니다. 이것은 지금까지 내 코드입니다
:
var formData = new FormData(form[0]);
var newImg = canvasResize($('#member_avatar')[0].files[0], {
width: 400,
height: 400,
crop: true,
quality: 100,
callback: function(data, width, height) {
formData.append("member_avatar", data);
}
});
$.ajax({
url: form.attr('action'),
type: form.attr('method').toUpperCase(),
data: formData,
cache: false,
processData: false,
contentType: false,
success: function(data, textStatus, jqXHR)
{
if(typeof data.error === 'undefined')
{
// Success so call function to process the form
console.log('SUCCESS: ' + data.success);
}
else
{
// Handle errors here
console.log('ERRORS: ' + data.error);
}
},
error: function(jqXHR, textStatus, errorThrown)
{
// Handle errors here
console.log('ERRORS: ' + textStatus);
},
complete: function()
{
// STOP LOADING SPINNER
}
});
아마도 img를 처리 할 PHP를 사용하거나 Img를 처리하는 함수를 만들면 시도 할 수 있습니다. 그러면 PHP는 Ajax를 호출합니다. – VeeeneX
클라이언트 쪽에서 처리하는 것이 좋습니다. 서버 부담을 줄이고 파일 크기를 줄입니다. – KeironLowe
그리고 작물 된 img를 서버에 보내시겠습니까? – VeeeneX