使用Summernote Editor时如何从服务器删除上传的图像

时间:2017-04-03 13:59:48

标签: php jquery html

我使用了图片上传的Summernote编辑器,但是我注意到当我在编辑器中添加图像内容时,它会成功上传到我的服务器文件夹而不保存它,但是当我删除编辑器中的图像时它不是从我的服务器文件夹中删除。

1 个答案:

答案 0 :(得分:0)

要删除文件格式服务器,您需要使用onMediaDelete,但使用情况因summernote版本不同而有所不同,有时在文档中很难找到

FOR SUMMERNOTE 0.6.x

$(document).ready(function() {
    $('.summernote').summernote({
        height: "300px",
         onMediaDelete : function($target, editor, $editable) {
         alert($target.context.dataset.filename);         
         $target.remove();
    }
    });
});

FOR SUMMERNOTE 0.7.x

$(document).ready(function() {
    $('.summernote').summernote({
        height: "300px",
        onMediaDelete : function(target) {
                deleteFile(target[0].src);
            }

    });
});

FOR SUMMERNOTE 0.8.x(使用回调)

$(document).ready(function() {
    $('#summernote').summernote({
        height: "300px",
        callbacks: {
            onImageUpload: function(files) {
                uploadFile(files[0]);
            },

            onMediaDelete : function(target) {
                // alert(target[0].src) 
                deleteFile(target[0].src);
            }
        }
    });
});

Javascript:使用img src删除文件的示例

function deleteFile(src) {

    $.ajax({
        data: {src : src},
        type: "POST",
        url: base_url+"dropzone/delete_file", // replace with your url
        cache: false,
        success: function(resp) {
            console.log(resp);
        }
    });
}

PHP:删除图片的示例afeter检索img src

<?php
  $src = $this->input->post('src'); // $src = $_POST['src'];
  $file_name = str_replace(base_url(), '', $src); // striping host to get relative path
        if(unlink($file_name))
        {
            echo 'File Delete Successfully';
        }
?>

enter image description here

图片上传参考 - Summernote v0.8 Image upload to Server