【问题标题】:PHP Upload Form, "Notice: Undefined index: upload"PHP 上传表单,“注意:未定义索引:上传”
【发布时间】:2010-09-21 18:47:54
【问题描述】:

我搜索了谷歌和stackoverflow,但没有找到正确的答案。

我正在使用表格。在这个表单中,我有一个简单的上传器

<form method="post" action="uploadImage.php" enctype="multipart/form-data">
   <input name="upload" id="upload" type="file" />
   <input name="add" type="submit" id="add" value="add">
</form>

现在,在我的uploadImage.php 文件中,我写在下面

print "<pre>";
print_r($_FILES['upload']);
print "</pre>";

当我上传文件大小低于 1.5MB 的图像时,会返回一个包含该文件信息的数组。 但是当我上传一个大约 2MB 大小的文件时,我得到 1 个错误,并且没有文件大小。 当我上传一个 8MB 的文件时,我得到了这个错误, 注意:未定义索引:在 C:\Program Files........\uploadImage.php 第 2 行上传

我认为这个问题与上传限制有关,问题是我该如何解决这个问题?

【问题讨论】:

    标签: php html forms file-upload


    【解决方案1】:

    在您的根文件夹中创建一个 .htaccess 文件并将以下代码放入其中。

    php_value upload_max_filesize 20M
    php_value post_max_size 20M
    php_value max_execution_time 200
    php_value max_input_time 200
    

    【讨论】:

    • 如何将 txt 文件重命名为 .htaccess
    • 如果您使用的是 Windows,则打开记事本 > 另存为 > 选择所有文件类型并将文件名指定为 .htaccess
    • 如果您使用的是 windows,您可能没有使用 apache,并且 .htaccess 文件将无法工作
    • 您能否使用此代码检查您的最大上传文件大小限制。
    • 好吧,我确实有一个 apache 和 mysql 服务器正在运行
    【解决方案2】:

    第一个错误是因为您达到了upload_max_filesize 限制,而当您点击post_max_size 时会出现另一个通知。

    post_max_size 通常应该设置为比upload_max_filesize 更高的值,因为这会涉及一些额外的开销/字节。

    【讨论】:

    • oki,我想我现在明白了。找出 php.ini 在我的模拟服务器上的位置。
    • 很好,现在每个人都可以使用。 Tnx 向我详细解释了这一点。
    【解决方案3】:

    php.ini 有控制最大上传大小的指令,特别是 post_max_size 和 upload_max_filesize,后者默认为 2M。 Look here.

    【讨论】:

    • 当我通过 eayphp 运行页面时,我在哪里可以找到 php.ini?
    • 我不建议直接编辑 php.ini 文件,因为大多数主机不允许您这样做。使用 .htaccess 总是更好。
    【解决方案4】:

    在 php.ini 中,您需要将行 upload_max_filesize 编辑为更高的值。 2MB 是默认限制。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-04
      • 2018-06-04
      • 2019-12-09
      • 1970-01-01
      • 2018-08-28
      • 2012-04-05
      • 2014-05-24
      相关资源
      最近更新 更多