http://fly.layui.com/jie/12987/
非常高兴的成为了2.0第一个精华贴,所以我继续将THINKPHP3.2.3后端上传代码同时提供出来。
今天试用了一下新版,我比较关注的是多图上传功能,感叹这次升级上传真的很强大。感谢@闲心
今天将上传示例中的第二个多图上传给优化一下,将左右切换及删除功能加上。
本着奉献的精神,现在将代码分享给朋友们。
HTML部分:
CSS部分:
#upload_img_list { margin: 10px 0 0 0 } #upload_img_list dd { position: relative; margin: 0 10px 10px 0; float: left } #upload_img_list .operate { position: absolute; top: 0; right: 0; z-index: 1 } #upload_img_list .operate i { cursor: pointer; background: #2F4056; padding: 2px; line-height: 15px; text-align: center; color: #fff; margin-left: 1px; float: left; filter: alpha(opacity=80); -moz-opacity: .8; -khtml-opacity: .8; opacity: .8 } #upload_img_list dd .img { max-height: 150px; max-width: 500px }
JS部分:
/* 上传参数设定 */ var upurl = "/upload/upimg";//上传图片地址 var duotu = true;//是否为多图上传true false /* 上传图片 */ layui.use('upload', function() { upload = layui.upload; upload.render({ elem: '#upload_img', url: upurl, multiple: duotu, before: function(obj) { layer.msg('图片上传中...', { icon: 16, shade: 0.01, time: 0 }) }, done: function(res) { layer.close(layer.msg());//关闭上传提示窗口 if (duotu == true) {//调用多图上传方法,其中res.imgid为后台返回的一个随机数字 $('#upload_img_list').append('
THINKPHP3.2.3上传代码:
这个放到公用的控制器里,做为JOSN返回的通用方法,当然你也可以不用这个,在上传代码里直接返回。 function DZD_AJAX_MSG($imgid,$tolink){ $ajax_msg['imgid']=$imgid; //提示信息 $ajax_msg['tolink']=$tolink; //跳转链接 echo json_encode($ajax_msg); //返回结果,json } 上传代码 public function upimg(){ // 上传文件 $upload = new \Think\Upload(); // 实例化上传类 $upload->maxSize = 3145728 ; // 设置附件上传大小 $upload->exts = array('jpg', 'png');// 设置附件上传类型 $upload->rootPath = './Uploads/'; // 设置附件上传根目录 $upload->savePath = '/img/'; // 设置附件上传(子)目录 $upload->subName = array('date','Ymd'); // 设置附件上传子目录按日期生成 $upload->replace = true; //同名覆盖 $info = $upload->upload(); if(!$info) { $this->DZD_AJAX_MSG($upload->getError(),""); exit; }else{ foreach($info as $file){ $dzd_img=$file['savepath'].$file['savename']; $file_path="./Uploads".$file['savepath'].$file['savename']; } $imgid=str_replace(".","",$file['savename']); //做为删除容器ID $this->DZD_AJAX_MSG($imgid,"/Uploads".$file['savepath'].$file['savename']); } }
多图上传效果:
单图上传效果: