php / jquery:无法保存裁剪的图像

时间:2018-04-29 18:23:50

标签: php jquery crop cropper

所以我创建了这个页面,允许用户裁剪他的图像,然后将其保存在他的文件中,但是,当我点击按钮裁剪时,它会向我显示警告消息“上传成功”,它没有t保存在我的文件夹中。所以我猜测文件upload.php存在问题,但是为了它,我将在这里提供这两个文件。请让我知道什么是错的。谢谢! 第一个名为h.php的文件

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="cropper.css">
<script src="cropper.js"></script>

<img id="image" style="width: 250px;" src="bg.JPG">
<script>
    $("#image").cropper();

    function crop(){
        $("#image").cropper('getCroppedCanvas').toBlob(function(blob) 
        {
            var formdata= new FormData();

            formdata.append('croppedImage', blob);
            $.ajax('upload.php',
            {
                method: "POST",
                data: formdata, 
                processData: false,
                contentType: false,
                success: function() {
                    alert('upload success');
                },
                error: function() {
                    console.log('upload error');
                }
            }

            )
        }

        );
    }
</script>

<style>
.cropper-crop{
    display:none;
}
.cropper-bg{
    background:none;
}
</style>
<button onclick="crop()">
crop
</button>

名为upload.php

的第二个文件
<?php
$croppedImage= $_FILES['croppedImage'];
$to_be_upload=$croppedImage['tmp_name'];
$new_file= 'cropped-Image.PNG'
move_uploaded_file($to_be_upload, $new_file);
echo 1;
?>

1 个答案:

答案 0 :(得分:0)

我认为move_uploaded_file的第一个参数应该是$ _FILES [&#39; croppedImage&#39;]而且$ _FILES期待一个文件对象,我不确定你是否正在发送正确的数据。