【问题标题】:Problems with file uploading HTML5文件上传 HTML5 的问题
【发布时间】:2012-05-02 13:07:50
【问题描述】:

我正在编写一个网络应用程序,我需要能够上传一份简历。我已经完成了我的功课并尝试了我能找到的一切,但我一直遇到同样的问题。在我的 PHP 脚本中,$_FILES 数组完全为空,并且 CV 字段被发送到 $_POST 数组。我的表格很大,所以我将发布重要的代码。

<form enctype="multipart/form-data" action="exec/register_user.php" method="post">
<input type="file" name="cv" id="cv"/>
<input type='submit' value='Register' />
</form>

那么我认为发布 PHP 代码不会对您有任何帮助。但是如果我 var_dump($GLOBALS),它表明 $_FILES 数组是空的,但 'cv' 在 $_POST 数组中显示为字符串。

任何帮助将不胜感激。 提前致谢!

【问题讨论】:

    标签: php html file file-upload upload


    【解决方案1】:

    这通常是由于上传的文件太大并超过了 2 个定义的上传限制之一。 post_max_size 或 upload_max_filesize

    如果您具有正确的权限,则可以通过在 .htaccess 文件中添加以下 2 行来覆盖这些值。

    php_value post_max_size 20M
    php_value upload_max_filesize 20M
    

    允许上传最大 20 MB 的文件

    【讨论】:

    • 我测试的文件是 138kb 吗?这通常会太大吗?
    • 默认情况下,我认为这些值最多允许 2MB,但这并不意味着您的配置使用默认值。文件那么小,我怀疑这是您问题的原因。
    【解决方案2】:

    您缺少 PHP 所需的隐藏字段 max_file_size

    <!-- MAX_FILE_SIZE must precede the file input field -->
    <input type="hidden" name="MAX_FILE_SIZE" value="20000000" />
    

    the explanation here

    【讨论】:

    • 谢谢,但我确实在某处看到并在我的文件输入之前添加了它,但它没有改变任何东西?
    • 所有这一切都会让浏览器拒绝一个太大的文件,而不是等待上传完成而服务器拒绝它。 php不需要接受文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    相关资源
    最近更新 更多