Thinkphp上传图片无效的问题。使用TP自带的方法直接上传图片,后台一直获取不到数据。按照官方原生的写法直接去做DEMO,又可以上传,排除了上传路径和文件夹权限的问题。
最后发现是在form里面少写了一句 enctype="multipart/form-data"。
是自己在写form的时候没有加入enctype。
TP原生的图片上传方法。
<form action="__URL__/upload" enctype="multipart/form-data" method="post" > <input type="text" name="name" /> <input type="file" name="photo" /> <input type="submit" value="提交" > </form>
后台PHP方法
public function upload(){ $upload = new \Think\Upload();// 实例化上传类 $upload->maxSize = 3145728 ;// 设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型 $upload->rootPath = './Uploads/'; // 设置附件上传根目录 $upload->savePath = ''; // 设置附件上传(子)目录 // 上传文件 $info = $upload->upload(); if(!$info) {// 上传错误提示错误信息 $this->error($upload->getError()); }else{// 上传成功 $this->success('上传成功!'); } }