layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例
发布:smiling 来源: PHP粉丝网 添加日期:2021-09-17 10:27:20 浏览: 评论:0
这篇文章主要介绍了layui框架实现文件上传及TP3.2.3对上传文件进行后台处理操作,结合实例形式分析了layui框架结合thinkPHP进行文件上传与处理操作相关实现技巧,需要的朋友可以参考下。
本文实例讲述了layui框架实现文件上传及TP3.2.3对上传文件进行后台处理操作,分享给大家供大家参考,具体如下:
layui框架是1.0.9版本。。
首先html页面代码如下:
- <div class="layui-form-item" id="upload_file">
- <div class="layui-input-block" style="width: 300px;">
- <input type="hidden" id="img_url1" name="HeadImageUrl" value=""/>
- <div class="layui-upload-drag" id="uploadpic1" lay-verify="uploadpic1">
- <div class="layui-col-xs12 layui-col-md12">
- <img class="layui-upload-img" id="demo1" >
- </div>
- <div class="button-hide">
- <input type="file" name="banner_file_upload" id="banner_file_upload" class="layui-uplaod-file" lay-type="file">
- </div>
- </div>
- </div>
- </div>
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);
- }
Tags: layui框架文件上传
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)