layui架構實現檔案上傳及TP3.2.3對上傳檔案進行幕後處理操作樣本

來源:互聯網
上載者:User
這篇文章主要介紹了layui架構實現檔案上傳及TP3.2.3對上傳檔案進行幕後處理操作,結合執行個體形式分析了layui架構結合thinkPHP進行檔案上傳與處理操作相關實現技巧,需要的朋友可以參考下

本文執行個體講述了layui架構實現檔案上傳及TP3.2.3對上傳檔案進行幕後處理操作。分享給大家供大家參考,具體如下:

layui架構是1.0.9版本。。

首先html頁面代碼如下:

<p class="layui-form-item" id="upload_file">     <p class="layui-input-block" style="width: 300px;">      <input type="hidden" id="img_url1" name="HeadImageUrl" value=""/>      <p class="layui-upload-drag" id="uploadpic1" lay-verify="uploadpic1">        <p class="layui-col-xs12 layui-col-md12">          <img class="layui-upload-img" id="demo1" >        </p>        <p class="button-hide">          <input type="file" name="banner_file_upload" id="banner_file_upload" class="layui-uplaod-file"  lay-type="file">        </p>      </p>    </p></p>

js代碼如下:

<script type="text/javascript" th:inline="javascript">     layui.use('upload', function (){       var upload = layui.upload;       var url="__PUBLIC__";       upload({         elem: '#banner_file_upload',         url: "/index.php/Admin/Product/upload",         method: 'post',         before: function(obj){           console.log('檔案上傳中');           layer.load();         },         success: function (msg) {           console.log(msg);           if(msg.msg=="success"){             layer.closeAll('loading');             layer.msg("上傳成功");             $("#img_url1").attr("value", msg.src);           }else if(msg.msg=="error"){             layer.closeAll('loading');             layer.msg(msg.code);           }         },         error:function (data) {           layer.msg("上傳失敗");           console.log(data);         }       });     });</script>

接下來的php後台接值的方法:

#上傳檔案方法public function upload(){    $res=array(     'code'=>1,     'msg'=>'no sorry',      'data'=>array(        'src'=>'',      )    );    #圖片存放路徑    $directory = C('UPLOAD_PATH')."/Public/docment/";    #判斷目錄是否存在 不存在則建立    if(!(is_dir($directory))){      $this->directory($directory);    }    #擷取資料庫最後一條id 當做檔案名稱    $product_last_id=D('ApiProduct')->getLastId();    $savename="ApiProduct_".time().'_'.($product_last_id['id']+1);    $upload = new \Think\Upload();    $upload->maxSize = 0;    $upload->exts = array('doc','docx','xls','xlsx','pdf','txt');    $upload->rootPath = $directory;    $upload->saveName="$savename";    $upload->savePath = '';    $info = $upload->uploadOne($_FILES['banner_file_upload']);    if(!$info){      $res['code']=$upload->getError();      $res['msg']='error';    }else{      $res['code']=0;      $res['msg']='success';      $res['src']="/Public/docment/".$savename.".".$info['ext'];    }   echo json_encode($res);die;}/*** 遞迴建立檔案* @author erwa<erwa@qingjinju.net>*/public function directory($dir){    return is_dir ( $dir ) or directory(dirname( $dir )) and mkdir ( $dir , 0777);}

您可能感興趣的文章:

Laravel架構實現model層的增刪改查操作樣本

ThinkPHP架構實現匯出excel資料的方法樣本

原生JS實現Ajax通過POST方式與PHP進行互動的方法樣本php技巧

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.