国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php layui實現前端多圖上傳實例

2024-05-05 00:10:38
字體:
來源:轉載
供稿:網友

php結合layui前端實現多圖上傳

前端html代碼

<div class="layui-upload">  <button type="button" class="layui-btn layui-btn-normal" id="testList">請選擇圖片</button>  <span class="num_pic"></span>  <div class="layui-upload-list">    <table class="layui-table">      <thead>        <tr>          <th>文件名</th>          <th id="pic">圖片預覽</th>          <th>大小</th>          <th>狀態</th>          <th id="cao">操作</th>        </tr>      </thead>      <tbody id="demoList"></tbody>    </table>  </div>  <button type="button" class="layui-btn" id="testListAction">開始上傳</button>    <span class="num_pic"></span></div>

js 代碼

<script type="text/javascript">  layui.use('upload', function() {    var $ = layui.jquery,      upload = layui.upload;    //多文件列表示例    var demoListView = $('#demoList'),      uploadListIns = upload.render({        elem: '#testList',        url: "{url('pic/index/upload')}",        accept: 'images',        acceptMime: 'image/*',        size: 8192,        multiple: true,        number: 400,        auto: false,        exts: 'jpg|png|jpeg',        bindAction: '#testListAction',        choose: function(obj) {          var files = this.files = obj.pushFile(); //將每次選擇的文件追加到文件隊列          //讀取本地文件          obj.preview(function(index, file, result) {            var tr = $(['<tr id="upload-' + index + '">', '<td>' + file.name + '</td>', '<td><img src="' + result + '"            //單個重傳            tr.find('.demo-reload').on('click', function() {              obj.upload(index, file);              $("#upload-" + index).find("td").eq(2).html((file.size / 1014).toFixed(1) + 'kb');            });            //刪除            tr.find('.demo-delete').on('click', function() {              delete files[index]; //刪除對應的文件              tr.remove();              uploadListIns.config.elem.next()[0].value = ''; //清空 input file 值,以免刪除后出現同名文件不可選            });            demoListView.append(tr);            $(".num_pic").text("總共【" + demoListView.find("tr").length + "】張圖片");          });        },        done: function(res, index, upload) {          if(res.code == 0) { //上傳成功            $("#cao").text("地址");            var tr = demoListView.find('tr#upload-' + index),              tds = tr.children();            tds.eq(3).html('<span style="color: #5FB878;">上傳成功</span>');            tds.eq(4).html('<input type="text" name="imgs[]" value="' + res.file + '" class="layui-input" />'); //清空操作            return delete this.files[index]; //刪除文件隊列已經上傳成功的文件          }          this.error(index, upload);        },        allDone: function(obj) { //當文件全部被提交后,才觸發          layer.msg("上傳文件數量:【" + obj.total + "】張,上傳成功:【" + obj.successful + "】張,失敗:【" + obj.aborted + "】", {            time: 3000          });          console.log(obj.total); //得到總文件數          console.log(obj.successful); //請求成功的文件數          console.log(obj.aborted); //請求失敗的文件數        },        error: function(index, upload) {          var tr = demoListView.find('tr#upload-' + index),            tds = tr.children();          tds.eq(2).html('<span style="color: #FF5722;">上傳失敗</span>');          tds.eq(4).find('.demo-reload').removeClass('layui-hide'); //顯示重傳        }      });  });</script>

后端代碼

public function uploadAction(){    $file=$_FILES['file'];    $root_url = 'uploadfiles/pic/image/';    if (!is_uploaded_file($file['tmp_name'])){      $data = array('code'=>1,'msg'=>"錯誤");      exit(json_encode($data,0));    }   /* $root_url.=date('Ymd').'/';*/    $ext = pathinfo($file['name']);    $num=makenum($this->memberinfo['id']);    $root_url.=$num.'/';    if (!is_dir($root_url)) {      mkdir($root_url,0777, true);    }    $pa=file_list::get_file_list($root_url);    $na=count($pa) + 1;    if ($na<10){      $name=$num.'-000'.$na;    }elseif($na<100){      $name=$num.'-00'.$na;    }elseif($na<1000){      $name=$num.'-0'.$na;    }else{      $name=$num.'-'.$na;    }    $n=$root_url.$name.".".$ext['extension'];    $result=move_uploaded_file($file['tmp_name'],$n);    if ($result){      exit(json_encode(array("code"=>0,"msg"=>"ok","file"=>$n,"size"=>$file['size']),0));    }else{      exit(json_encode(array("code"=>1,"msg"=>"false","file"=>$n,"size"=>$file['size']),0));    }  }

上傳效果:

php,layui,前端,多圖上傳

php,layui,前端,多圖上傳

以上就是php結合layui前端實現多圖上傳的全部知識點,感謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 石阡县| 潮州市| 神池县| 曲水县| 岑巩县| 阿拉善左旗| 嘉祥县| 孝感市| 博白县| 库尔勒市| 恩施市| 宜宾市| 连云港市| 云和县| 吉首市| 德州市| 宁津县| 九龙县| 武陟县| 左贡县| 崇文区| 靖安县| 邵阳县| 贡山| 弥渡县| 于都县| 岐山县| 连山| 大荔县| 绿春县| 宁河县| 邯郸市| 连城县| 宜君县| 慈利县| 珠海市| 宁蒗| 镇江市| 平凉市| 张家港市| 连江县|