layui thinkphp表单图片上传upload
冰貂主人
2023-12-08 10:54:34
0

php代码

//执行图片上传
    public function upload($field){
     //获取请求的数据
     $file=request()->file($field);
     $info=$file->move(STATIC_PATH.'/upload/images/'.$field);
     //$info=$file->move(ROOT_PATH.'public'.DS.'static'.DS.'super'.DS.'image'.DS.$field);
     if($info){              
         
         $system_logo = Db::name('setting')  ->where('site_id', 0) ->value('system');
         if($system_logo){          
          // 更换图片后查询原有图片地址并删除
          $console=str_replace('\\\\','/',$system_logo);
          $system_logo=str_replace('"','',$console);         
          if(is_file(STATIC_PATH.'/upload/images/system_logo/'.$system_logo)){
            unlink(STATIC_PATH.'/upload/images/system_logo/'.$system_logo);
          }
        }
        return json(['code'=>1000,'msg'=>'上传成功','data'=>$info->getSaveName()]);
     }else{
        return json(['code'=>1001,'msg'=>$file->getError(),'data'=>'']);
     }
    }
    //添加站点
     public function addSite(){
        if(request()->isPost()){
            $request=htmlspecialchars_decode(input('val'));
            $req=json_decode($request,true);          
            if(!empty($req['header_pic'])){
                $data['avatar']=$req['header_pic'];                
            }
            $data['create_time']=time();           
            $db=Db::name('site')->insert($data);
            if($db){
                return json(['code'=>1000,'msg'=>'添加成功']);
            }else{
                return json(['code'=>1001,'msg'=>'添加失败']);
            }
        }               
     }

html代码

<div class="layui-form-item">
         <label class="layui-form-label">头像:</label>
         <div class="layui-input-block">
             <button type="button" class="layui-btn" id="uploadClick">
             <i class="layui-icon">&#xe67c;</i>上传图片
          </button>
          <div class="layui-upload-list">
              <img class="layui-upload-img" width="100px" height="100px" id="showPic" src="">
             
          </div>
             <input type="hidden" value="" name="header_pic" id="pichidden">
         </div>
      </div>
  <script type="text/javascript">
    layui.use(['form','upload'],function(){
      var table=layui.table;
      var upload=layui.upload;
      form.on("submit(addziliao)",function(obj){      
        fields=JSON.stringify(obj.field);
        $.ajax({
          type:'post'
          ,url:"__URL__/addSite"
          ,data:{val:fields}
          ,success:function(data){           
              layer.msg(data.msg,{icon:2})           
          }
        })
        layer.closeAll();
        return false;
      })
      upload.render({
        elem:"#uploadClick",
        url:"__URL__/upload?field=header_pic",
        accept:"images",//允许上传的文件类型
        acceptMime:"image/jpg,image/png,image/jpeg",//打开文件选择框时允许显示的文件类型
        exts:'jpg|png|jpeg',//允许上传的文件后缀
        size:1020,//允许上传的文件大小 单位kb
        auto:true,//选中文件自动上传
        field:'header_pic',
        before:function(obj){
            //预览
            obj.preview(function(index,file,result){
                $('#showPic').attr('src',result);
            })
        },done:function(res){
            if(res.code==1000){
                $('#pichidden').attr('value',res.data);
                layer.msg(res.msg,{icon:1});
            }else{
                layer.msg(res.msg,{icon:2});
            }
        }
    })
    })
  </script>

扩展:

Excel:
    accept: 'file',
    acceptMime: 'application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
    exts: 'xlsx|xls', //只允许上传excel文件
CSV:
    accept: 'file',
    acceptMime: '.csv',
    exts: 'csv', //只允许上传csv文件

TXT:
    accept: 'file',
    acceptMime: 'text/plain',
    exts: 'txt', //只允许上传txt文件

相关内容

html下载阿里云oss文...
html或者react下载阿里云oss文件视频图片
2024-08-04 10:27:02
Empty directo...
Empty directories is not supporte...
2024-07-25 09:15:46
穿梭框layui.tran...
div id=test1 class=demo-transfer/...
2024-04-09 15:59:09
tp5和layui表单提交...
form class=layui-form layui-form-...
2024-04-09 14:45:31
tp5 layui登录时失...
使用tp5和layui框架结合的登录页面,在首次登录时不出现验证码...
2024-02-26 09:59:58
layui数据接口请求异常...
layui数据接口请求异常:parsererror
2023-12-16 15:43:27

热门资讯

tp5 jquery判断手机端... application--common.php中添加如下代码 //函数作用是判断用户打开的是手机端还...
Laravel 5.5 .No... 创建了新的laravel项目后, 运行提示:No application encryption ke...
php 打印date函数出现错... 问题描述: 我使用的是phpstudy,在练习时间函数的时候,打印出现在的时间,date(Y-m-d...
生成随机字符唯一标识符guid... /** * @param $length * @return string * 生成随机字符串 */...
layui缩略图 div class=layui-form-item label class=layui-form-l...
php函数substr_rep... php函数substr_replace从某个位置替换或删除或插入字符串
Laravel 引入自定义类库... 强烈建议引入的类 都是含有命名空间的,这样使用起来就不会出现重名的情况。!!当然,没有命名空间也可以...
object json转化为数... //调用api 程序,通知商户订单异常 20200314 public function callt...
Laravel 查看SQL操作... 方法一:临时打印操作记录 DB::connection()-enableQueryLog(); # ...
php银行开放平台接口:pfx... 问题描述: 对接易通银行,他们的服务开放平台是java开发,而我的是php,现在需要php版本的SD...