直接上代码
PHP代码如下
/** * 上传 */ public function upload_photo(){ $file = $this->request->file('file'); $uid = session('ydyl_weixin_user.id'); // if(empty($uid)){ // return ['code'=>404,'msg'=>'用户未登录']; // } if(!empty($file)){ // 移动到框架应用根目录/public/uploads/ 目录下 $info = $file->validate(['size'=>1048576,'ext'=>'jpg,png,gif'])->rule('uniqid')->move(ROOT_PATH . 'public' . DS . 'uploads'); $error = $file->getError(); //验证文件后缀后大小 if(!empty($error)){ dump($error);exit; } if($info){ // 成功上传后 获取上传信息 // 输出 jpg $info->getExtension(); // 输出 20160820/42a79759f284b767dfcb2a0197904287.jpg $info->getSaveName(); // 输出 42a79759f284b767dfcb2a0197904287.jpg $photo = $info->getFilename(); }else{ // 上传失败获取错误信息 $file->getError(); } }else{ $photo = ''; } if($photo !== ''){ return ['code'=>1,'msg'=>'成功','photo'=>$photo]; }else{ return ['code'=>404,'msg'=>'失败']; } }
HTML代码如下
<div class="upload-btn"> <input type="file" name="pic1" id="pic" accept="image/gif,image/jpeg,image/x-png"/> </div> <script> //上传图片 $('#pic').change(function(event) { var formData = new FormData(); formData.append("file", $(this).get(0).files[0]); $.ajax({ url:'http://www.juplus.cn/vdma/index/ydyl/upload_photo', type:'POST', data:formData, cache: false, contentType: false, //不可缺 processData: false, //不可缺 success:function(data){ console.log(data) } }); }); </script>
有写错的请私信我,谢谢