PHP文件上传不读取$ _FILES ['image'] [英] PHP file uploads doesnot read $_FILES['image']

查看:761
本文介绍了PHP文件上传不读取$ _FILES ['image']的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个输入类型

 < input class =btn btn-successtype =filename = profile_imagestyle =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';



$ p $ getImageType

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

$ / code>

但它不读取 $ _ FILES ['profile_image '] ,而是移动到其他部分。为什么不读取$ _FILES?

解决方案

在表单标签中添加此代码

enctype =multipart / form-data

 < form action =upload.phpmethod =postenctype =multipart / form-data> 


i have this input type

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

user will add the image file from here, and the PHP code to upload the file

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';
            }

and the getImageType

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

but it does not read $_FILES['profile_image'] and rather moves to else part. why does it not read $_FILES ? is there anything missing?

解决方案

add this code in form tag
enctype="multipart/form-data"

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

这篇关于PHP文件上传不读取$ _FILES ['image']的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆