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文件

相关内容

如何设置PHP文件上传功能
设置PHP文件上传功能需在HTML中创建文件选择表单,并在PHP中...
2025-01-31 04:46:57
高效使用PHP解析EXIF...
摘要: 本文介绍了如何高效使用PHP解析EXIF数据在实际项目中...
2025-01-16 21:00:47
PHP实现Exif解析库的...
PHP实现Exif解析库,通过安装`php-exif`库并使用其A...
2025-01-16 20:46:43
PHP在摄影图片处理中的E...
PHP在摄影图片处理中,支持解析Exif图像格式,可利用GD库或P...
2025-01-16 20:23:46
PHP与相机Exif数据提...
本文介绍了PHP与相机Exif数据提取技术。Exif是数码相机拍摄...
2025-01-16 19:23:40
PHP在图片处理中的Exi...
PHP提供了强大的图片处理功能,包括Exif图像解析功能。通过使用...
2025-01-16 19:00:46

热门资讯

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