Heim > Backend-Entwicklung > PHP-Problem > So implementieren Sie die Funktion zum Löschen von Bildern in PHP UEditor

So implementieren Sie die Funktion zum Löschen von Bildern in PHP UEditor

藏色散人
Freigeben: 2023-03-04 06:38:01
Original
1742 Leute haben es durchsucht

So löschen Sie Bilder im PHP-Ueditor: Suchen Sie zuerst die Datei „uedior/dialogs/image/image.js“ und ändern Sie „Inhalt hinzufügen“. Öffnen Sie dann die Datei „mageManager.php“ und fügen Sie den Inhalt als „function delfile()“ hinzu. ".

So implementieren Sie die Funktion zum Löschen von Bildern in PHP UEditor

Empfohlen: „PHP-Video-Tutorial

PHP-Version fügt Bildlöschfunktion zur Online-Bildverwaltungsspalte von UEditor hinzu

1. Finden Sie uedior/dialogs/image/image.j s-Datei , Add ist der geänderte Teil des Codes:

/**
 * tab点击处理事件
 * @param tabHeads
 * @param tabBodys
 * @param obj
*/
function clickHandler(tabHeads, tabBodys, obj) {
    //head样式更改
    for (var k = 0,
    len = tabHeads.length; k < len; k++) {
        tabHeads[k].className = "";
    }
    obj.className = "focus";
    //body显隐
    var tabSrc = obj.getAttribute("tabSrc");
    for (var j = 0,
    length = tabBodys.length; j < length; j++) {
        var body = tabBodys[j],
        id = body.getAttribute("id");
        body.onclick = function() {
            this.style.zoom = 1;
        };
        if (id != tabSrc) {
            body.style.zIndex = 1;
        } else {
            body.style.zIndex = 200;
            //当切换到本地图片上传时,隐藏遮罩用的iframe
            if (id == "local") {
                toggleFlash(true);
                maskIframe.style.display = "none";
                //处理确定按钮的状态
                if (selectedImageCount) {
                    dialog.buttons[0].setDisabled(true);
                }
            } else {
                toggleFlash(false);
                maskIframe.style.display = "";
                dialog.buttons[0].setDisabled(false);
            }
            var list = g("imageList");
            list.style.display = "none";
            //切换到图片管理时,ajax请求后台图片列表
            if (id == "imgManager") {
                list.style.display = "";
                //已经初始化过时不再重复提交请求
                if (!list.children.length) {
                    ajax.request(editor.options.imageManagerUrl, {
                        timeout: 100000,
                        action: "get",
                        onsuccess: function(xhr) {
                            //去除空格
                            var tmp = utils.trim(xhr.responseText),
                            imageUrls = !tmp ? [] : tmp.split("ue_separate_ue"),
                            length = imageUrls.length;
                            g("imageList").innerHTML = !length ? "  " + lang.noUploadImage: "";
                            for (var k = 0,ci; ci = imageUrls[k++];) {
                                //Add Start===============================
                                var div = document.createElement("div");
                                var img = document.createElement("img");
                                var del = document.createElement("img");
                                var p = document.createElement("p");
 
                                div.appendChild(img);
                                div.appendChild(p);
                                p.appendChild(del);
                                div.style.display = "none";
 
                                img.style.height = "100px";
                                img.style.width = "100px";
                                del.setAttribute("src", "images/del.png");
                                p.style.marginTop = "-104px";
                                p.style.marginLeft = "90px";
 
                                g("imageList").appendChild(div);
                                img.onclick = function() {
                                    changeSelected(this);
                                };
 
                                del.onclick = function() {
                                    var me = this,
                                    src = me.getAttribute("alt", 2);
                                    var pic = me.parentNode.parentNode.childNodes[0];
                                    if (!confirm("删除操作不可恢复,您确认要删除本图片么?")) return;
                                    ajax.request(editor.options.imageManagerUrl, {
                                        action: "del",
                                        fileName: src.substr(src.lastIndexOf("/") + 1),
                                        onsuccess: function(xhr) {
                                            me.parentNode.parentNode.removeChild(pic);
                                            me.parentNode.removeChild(me);
                                        },
                                        onerror: function(xhr) {
                                            alert("服务器删除图片失败,请重试!");
                                        }
                                    });
                                };
                                //Add End================================
                                img.onload = function() {
                                    this.parentNode.style.display = "";
                                    var w = this.width,
                                    h = this.height;
                                    scale(this, 100, 120, 80);
                                    this.title = lang.toggleSelect + w + "X" + h;
                                    this.onload = null;
                                };
                                img.setAttribute(k < 35 ? "src": "lazy_src", editor.options.imageManagerPath + ci.replace(/\s+|\s+/ig, ""));
                                img.setAttribute("title", editor.options.imageManagerPath + ci.replace(/\s+|\s+/ig, ""));
                                img.setAttribute("width", "100px");
                                img.setAttribute("height", "100px");
 
                                del.onload = function() { //设置加载del图片时的样式
                                    this.style = "border:0";
                                    this.onload = null;
                                };
                                del.setAttribute("alt", editor.options.imageManagerPath + ci.replace(/\s+|\s+/ig, ""));
                            }
                        },
                        onerror: function() {
                            g("imageList").innerHTML = lang.imageLoadError;
                        }
                    });
                }
            }
            if (id == "imgSearch") {
                selectTxt(g("imgSearchTxt"));
            }
            if (id == "remote") {
                $focus(g("url"));
            }
        }
    }
}
Nach dem Login kopieren

Suchen Sie die Datei uedior/php/imageManager.php und fügen Sie den folgenden Inhalt hinzu:

if ($action == "del") {
    $fileName = $_POST[&#39;fileName&#39;];
    foreach($paths as $path) {
        $str1 = delfiles($fileName, $path);
        break;
    }
}
 
function delfiles($fileName, $path, &$files = array()) {
    if (!is_dir($path)) return null;
    $handle = opendir($path);
    while (false !== ($file = readdir($handle))) {
        if ($file != &#39;.&#39; && $file != &#39;..&#39;) {
            $path2 = $path.&#39;/&#39;.$file;
            if (is_dir($path2)) {
                delfiles($fileName, $path2, $files);
            } else {
                if (preg_match("/\.(gif|jpeg|jpg|png|bmp)$/i", $file)) {
                    $path3 = str_replace(&#39;../../&#39;, &#39;/static/&#39;, $path2);
                    $fileImg = basename($path3);
                    if ($fileImg == $fileName) {
                        $is_del = unlink($path2);
                    }
                }
            }
        }
    }
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Funktion zum Löschen von Bildern in PHP UEditor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage