PHP仿微信多圖片預覽上傳功能

原始碼下載發表於2017-01-16

PHP仿微信多圖片預覽下載演示地址:http://www.erdangjiade.com/js/830
生產圖片區域,上傳按鈕#btn可替換自己想要的圖片

<ul id="ul_pics" class="ul_pics clearfix"> 
    <li><img src="logo.png" id="btn" class="img_common" /></li> 
</ul>

plupload上傳

var uploader = new plupload.Uploader({//建立例項的構造方法 
    runtimes: `html5,flash,silverlight,html4`, //上傳外掛初始化選用那種方式的優先順序順序 
    browse_button: `btn`, // 上傳按鈕 
    url: "ajax.php", //遠端上傳地址 
    flash_swf_url: `plupload/Moxie.swf`, //flash檔案地址 
    silverlight_xap_url: `plupload/Moxie.xap`, //silverlight檔案地址 
    filters: { 
        max_file_size: `10mb`, //最大上傳檔案大小(格式100b, 10kb, 10mb, 1gb) 
        mime_types: [//允許檔案上傳型別 
            {title: "files", extensions: "jpg,png,gif,jpeg"} 
        ] 
    }, 
    multi_selection: true, //true:ctrl多檔案上傳, false 單檔案上傳 
    init: { 
        FilesAdded: function(up, files) { //檔案上傳前 
            if ($("#ul_pics").children("li").length > 30) { 
                alert("您上傳的圖片太多了!"); 
                uploader.destroy(); 
            } else { 
                var li = ``; 
                plupload.each(files, function(file) { //遍歷檔案 
                    li += "<li id=`" + file[`id`] + "`><div class=`progress`><span class=`bar`></span><span class=`percent`>0%</span></div></li>"; 
                }); 
                $("#ul_pics").prepend(li); 
                uploader.start(); 
            } 
        }, 
        UploadProgress: function(up, file) { //上傳中,顯示進度條 
            var percent = file.percent; 
            $("#" + file.id).find(`.bar`).css({"width": percent + "%"}); 
            $("#" + file.id).find(".percent").text(percent + "%"); 
        }, 
        FileUploaded: function(up, file, info) { //檔案上傳成功的時候觸發 
            var data = eval("(" + info.response + ")");//解析返回的json資料 
            $("#" + file.id).html("<input type=`hidden`name=`pic[]` value=`" + data.pic + "`/><input type=`hidden`name=`pic_name[]` value=`" + data.name + "`/><img class=`img_common` onclick=delPic(`" + data.pic + "`,`" + file.id + "`) src=`" + data.pic + "`/>");//追加圖片 
        }, 
        Error: function(up, err) { //上傳出錯的時候觸發 
            alert(err.message); 
        } 
    } 
}); 
uploader.init();

ajax刪除上傳的圖片

function delPic(pic, file_id) { //刪除圖片 引數1圖片路徑  引數2 隨機數 
    if (confirm("確定要刪除嗎?")) { 
        $.post("del.php", {pic: pic}, function(data) { 
            $("#" + file_id).remove() 
        }) 
    } 
}


相關文章