mysql 如何检查是否设置了$_POST[image]

wydwbb8l  于 2022-11-28  发布在  Mysql
关注(0)|答案(1)|浏览(101)

我们问如何检查是否$_POST[FILE] isset我有一个文件输入,如果我提交我的表单没有图像,我希望发生的事情,如果我上传了一个文件的输入,我希望发生不同的事情。

if (!isset($_POST[image])) { }

无论我是否在输入中上传了文件,似乎都会触发。

<label>
    <p>Profile Picture:</p>
    <input type="file" name="image" value="" />
</label>

我的上一个问题被标记为与此答案重复Check whether file is uploaded,但是

if (!file_exists($_FILE['image'])) { }

我也不工作,即使上传了图片,它仍然显示真实。所以不是我需要的答案。

bxfogqkk

bxfogqkk1#

要检查是否有上传的文件,您需要检查文件的大小。
然后检查它是否是一个图像,你需要使用getimagesize()函数。请看下面我的脚本:
于飞:

<form action="index.php?act=s" method="post" enctype="multipart/form-data">
<input type="file" name="image" value=""/>
<input type="submit">
</form>

PHP程式码:

<?php  
if(isset($_GET['act'])){
    // Check if there is a file uploaded
    if($_FILES["image"]["size"]>0){
        echo "There is a file uploaded<br>";
        // Check if its an image
            $check_if_image = getimagesize($_FILES["image"]["tmp_name"]);
            if($check_if_image !== false) {
                echo "Image = " . $check_if_image["mime"] . ".";            
            } else {
                echo "Not an image";            
            }
    }
    else{
        echo "There is NO file uploaded<br>";
    }   
}   
?>

相关问题