UEditor 添加在線管理圖片刪除功能
阿新 • • 發佈:2017-08-11
ueditor 圖片刪除 在線管理
第一,需要添加一個 php 文件來實現刪除功能,文件添加到: ueditor\php\action_delete.php 代碼內容:
<?php /*--------------------------- * wang *zhibeiwang.blog.51cto.com * 2017-08-10 * action_delete.php * 刪除 Ueditor 目錄下的文件 *---------------------------*/ try { //獲取路徑 $path = $_POST[‘path‘]; $path = str_replace(‘../‘, ‘‘, $path); $path = str_replace(‘/‘, ‘\\‘, $path); //安全判斷(只允許刪除 ueditor 目錄下的文件) if(stripos($path, ‘\\ueditor\\‘) !== 0) { return ‘非法刪除‘; } //獲取完整路徑 $path = $_SERVER[‘DOCUMENT_ROOT‘].$path; if(file_exists($path)) { //刪除文件 unlink($path); return ‘ok‘; } else { return ‘刪除失敗,未找到‘.$path; } } catch (Exception $e) { return ‘刪除異常:‘.$e->getMessage(); }
第二,需要在 ueditor\php\controller.php 文件的 switch 中添加命令 deleteimage 的處理:
.... switch ($action) { .... /* 刪除圖片命令處理 */ case ‘deleteimage‘: $result = include(‘action_delete.php‘); break; /* 在 default 之前添加 */ default: $result = json_encode(array( ‘state‘=> ‘請求地址出錯‘ )); break; } ....
第三,在圖片上添加刪除按鈕,需要修改 Js 文件:ueditor\dialogs\image\image.js
.... /* 在這兩句之後添加 */ item.appendChild(img); item.appendChild(icon); /* 添加刪除功能 */ item.appendChild($("<span class=‘delbtn‘ url=‘" + list[i].url + "‘></span>").click(function() { var del = $(this); try{ window.event.cancelBubble = true; //停止冒泡 window.event.returnValue = false; //阻止事件的默認行為 window.event.preventDefault(); //取消事件的默認行為 window.event.stopPropagation(); //阻止事件的傳播 } finally { if(!confirm("確定要刪除嗎?")) return; $.post(editor.getOpt("serverUrl") + "?action=deleteimage", { "path": del.attr("url") }, function(result) { if (result == "ok") del.parent().remove(); else alert(result); }); } })[0]); /* 在這一句之前添加 */ this.list.insertBefore(item, this.clearFloat); ....
第四,為刪除按鈕添加一個樣式,修改文件:ueditor\dialogs\image\image.css 在最底部添加如下代碼:
/* 在線管理刪除按鈕樣式 */ #online li .delbtn { position: absolute; top: 0; right: 0; border: 0; z-index: 3; color: #ffffff; display: inline; font-size: 12px; line-height: 10.5px; padding:3px 5px; text-align: center; background-color: #d9534f; }
效果如下:
本文出自 “王森” 博客,請務必保留此出處http://zhibeiwang.blog.51cto.com/7555525/1955197
UEditor 添加在線管理圖片刪除功能