PHP 文件上传不读取 $_FILES['image'] [重复]

Posted

技术标签:

【中文标题】PHP 文件上传不读取 $_FILES[\'image\'] [重复]【英文标题】:PHP file uploads doesnot read $_FILES['image'] [duplicate]PHP 文件上传不读取 $_FILES['image'] [重复] 【发布时间】:2016-04-27 12:52:29 【问题描述】:

我有这个输入类型

  <input class="btn btn-success" type="file" name="profile_image" style="margin-top:10px; margin-left:20px;"></input>

用户将从这里添加图像文件,以及上传文件的 php 代码

if(isset($_FILES['profile_image']))
            
                $image_type = $this->getImageType($_FILES['profile_image']);

                if($image_type == 'image')
                
                    $extension = pathinfo($_FILES['profile_image']['name'], PATHINFO_EXTENSION);
                    $filename = '123_'.uniqid().'.'.$extension;
                    move_uploaded_file($_FILES['profile_image']['tmp_name'], '../functions/images/images/'.$filename);
                
            
else
            
                $filename = 'default_profile_image.jpg';
            

还有getImageType

public function getImageType($file)
    
        $imageMime = getimagesize($file['tmp_name']);
        $type = explode('/', $imageMime['mime']);
        return $type[0];
    

但它不读取$_FILES['profile_image'],而是移至其他部分。为什么它不读取 $_FILES ?有什么遗漏吗?

【问题讨论】:

也许您的&lt;form&gt; 标签缺少enctype="multipart/form-data" 属性? Read more. 【参考方案1】:

在表单标签中添加此代码enctype="multipart/form-data"

<form action="upload.php" method="post" enctype="multipart/form-data">

【讨论】:

以上是关于PHP 文件上传不读取 $_FILES['image'] [重复]的主要内容,如果未能解决你的问题,请参考以下文章

php如何将图片转成字节流

PHP从上传的文本文件中读取?

php 使用$_FILES 能否获得上传文件的绝对地址

php - 上传图片之痛(建文件夹)

PHP -- 上传文件接口编写 及 iOS -- 端上传图片AF实现

php如何实现一次性上传多个文件