【问题标题】:getimagesize() warning - filename cannot be emptygetimagesize() 警告 - 文件名不能为空
【发布时间】:2013-03-19 06:13:31
【问题描述】:

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

警告: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 } ?>

【问题讨论】:

    标签: php image file upload


    【解决方案1】:

    你需要把tmp文件放在那里,而不是文件名;

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

    【讨论】:

      【解决方案2】:

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

      if(isset($_POST["submit"])) {
      
          list($width, $height, $type, $attr) = getimagesize($_FILES["image"]["tmp_name"]);       
      
      }
      

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

      【讨论】:

        【解决方案3】:

        使用$_FILES["image"]["tmp_name"] 代替$_FILES["image"]["name"]

        【讨论】:

          猜你喜欢
          • 2014-01-31
          • 1970-01-01
          • 2015-01-21
          • 2013-07-12
          • 2017-06-15
          • 1970-01-01
          • 2012-05-24
          • 2013-06-18
          • 1970-01-01
          相关资源
          最近更新 更多