1

我有一个公式,用户应该在其中上传具有特定尺寸和类型的图像。当我选择图像并单击提交按钮时,会出现警告:

警告:getimagesize() [function.getimagesize]: 第 5 行 xxx.php 中的文件名不能为空

这个问题不需要检查尺寸和类型的代码。

<!-- language: lang-php -->
<?php
    if (isset($_POST["submit"])) {
        list($width, $height, $type, $attr) = getimagesize($_FILES["image"]["name"]);       
    } else { ?>

    <form action="#" method="post" enctype="multipart/form-data">
        <input type="file" name="image" />
        <input type="submit" name="submit" />
    </form>             
<?php } ?>
4

3 回答 3

2

使用$_FILES["image"]["tmp_name"]而不是$_FILES["image"]["name"].

于 2013-03-28T17:17:19.353 回答
0

您需要将 tmp 文件放在那里,而不是文件名;

 list($width, $height, $type, $attr) = getimagesize($_FILES["image"]["tmp_name"]);    
于 2013-03-28T17:16:29.897 回答
0

在下面的块中,您不应该只检查$_POST,还要检查$_FILES. 您似乎没有成功将文件发送到服务器。

if(isset($_POST["submit"])) {

    list($width, $height, $type, $attr) = getimagesize($_FILES["image"]["tmp_name"]);       

}

编辑:正如其他答案所指出的,您还应该使用“tmp_name”而不是名称。

于 2013-03-28T17:16:53.397 回答