【问题标题】:$_FILES is null, $_POST is not null$_FILES 为空,$_POST 不为空
【发布时间】:2010-03-24 15:38:40
【问题描述】:

当我要上传文件时,我的 $_POST 变量知道文件名,但 $_FILES 变量为空。我以前用过这段代码,所以我真的很难过。

这是我用于输入的内容:

<label for="importFile">Attach Resume:</label>
<input type="hidden" name="MAX_FILE_SIZE" value="10000000">
<input type="file" name="importFile" id="importFile" class="validate['required']">

用于处理:

$uploaddir = "E:/Sites/OPL/2008/assets/apps/newjobs/resumes/";
$uploadfile = $uploaddir . time() . '-' . urlencode(basename($_FILES['importFile']['name']));

if (!move_uploaded_file($_FILES['importFile']['tmp_name'], $uploadfile)) {
    echo 'Error uploading file. Error number: ' . $_FILES['importFile']['error'];
    var_dump($_FILES['importFile']);
    echo $_POST['importFile'];
    die();
}

这给了我这个结果:

Error uploading file. Error number: NULL
Maintaining The OPL Website.doc

任何帮助将不胜感激。

【问题讨论】:

  • 您是否正确设置了表单?它必须包含 enctype="multipart/form-data"
  • afaik,$_FILES 仅在表单是多部分编码的情况下才有效,因此请确保您的 html 表单是这样 :-)
  • 你们快!我完全忽略了这个明显的事实。请张贴作为答案,以便我可以关闭这个问题。干杯
  • 在 1 分钟内 3 个人产生了相同的想法:D

标签: php web-applications file-upload


【解决方案1】:

我不确定,但首先检查表单是否包含

 enctype="multipart/form-data"

第二次检查 $_FILES 中的内容,我不确定 $_FILES['importFile'] 是否正确...我认为它不包含名称

【讨论】:

    【解决方案2】:

    表单标签是否有enctype='multipart/form-data' 属性?

    【讨论】:

      【解决方案3】:

      您是否将表单标签的enctype 属性设置为multipart/form-data?它应该是

      <form enctype="multipart/form-data" ...
      

      【讨论】:

        猜你喜欢
        • 2015-06-24
        • 1970-01-01
        • 2023-03-09
        • 1970-01-01
        • 2011-08-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多