thinkphp上传文件后获取不到信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp上传文件后获取不到信息相关的知识,希望对你有一定的参考价值。

具体就是这样,打印数组为空

注意表单的Form标签中一定要添加 enctype=”multipart/form-data”文件才能上传。因为表单提交到当前模块的upload操作方法,所以我们在模块类里面添加下面的upload方法即可:
Public function upload()
import(\'ORG.Net.UploadFile\');
$upload = new UploadFile();// 实例化上传类
$upload->maxSize = 3145728 ;// 设置附件上传大小
$upload->allowExts = array(\'jpg\', \'gif\', \'png\', \'jpeg\');// 设置附件上传类型
$upload->savePath = \'./Public/Uploads/\';// 设置附件上传目录
if(!$upload->upload()) // 上传错误提示错误信息
$this->error($upload->getErrorMsg());
else// 上传成功 获取上传文件信息
$info = $upload->getUploadFileInfo();


// 保存表单数据 包括附件数据
$User = M("User"); // 实例化User对象
$User->create(); // 创建数据对象
$User->photo = $info[0][\'savename\']; // 保存上传的照片根据需要自行组装
$User->add(); // 写入用户数据到数据库
$this->success(\'数据保存成功!\');
参考技术A

会不会玩啊?上传文件用get。


html:

<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('上传成功!');
    

本回答被提问者采纳

以上是关于thinkphp上传文件后获取不到信息的主要内容,如果未能解决你的问题,请参考以下文章

使用ThinkPHP实现附件上传

thinkphp如何将多张上传的图片根据状态分别存储!

Thinkphp5 删除上传文件

thinkphp3.2中怎样读取上传文件名

ThinkPHP之文件上传

thinkphp6图片上传成功后怎样返回具体的url?