当前位置: 首页 > 面试题库 >

将文件上传到PHP时,为什么$ _FILES为空?

令狐经武
2023-03-14
问题内容

我在Windows 7计算机上安装了WampServer 2。我正在使用Apache 2.2.11和PHP
5.2.11。当我尝试从表单上传任何文件时,似乎都在上传,但是在PHP中,$_FILES数组为空。文件c:\wamp\tmp夹中没有文件。我已配置php.ini为允许文件上传等。该tmp文件夹具有当前用户的读/写特权。我很沮丧

HTML:

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
    <form enctype="multipart/form-data" action="vanilla-upload.php" method="POST">
        Choose a file to upload: <input name="uploadedfile" type="file" /><br />
        <input type="submit" value="Upload File" />
    </form>
</body>
</html>

PHP:

<?php
echo 'file count=', count($_FILES),"\n";
var_dump($_FILES);
echo "\n";
?>

问题答案:

谢谢大家的全面答复。这些都非常有帮助。答案很奇怪。事实证明,PHP 5.2.11不喜欢以下内容:

post_max_size = 2G

要么

post_max_size = 2048M

如果我将其更改为2047M,则上传成功。



 类似资料:
  • 我想将文件上载到服务器,但数组似乎为空。 我下面的代码有问题吗? PHP代码 Print_r($_FILES['fotos'])向我展示了这个:数组([name]=

  • 我不知道这是与代码有关还是与服务器有关... 在一个PHP页面上,我调用了一个包含标准PHP上传过程的上传函数。在调用函数之后,我执行重定向(尝试使用window.location或header())。 奇怪的是,每件事都运行良好的几次,然后它就不会再上传了(uploadOK也不会是0)。它不会将文件移动到服务器上。 然后,我将取出重定向,上传将重新开始工作。我把重定向放回去,上传还能工作几次,然

  • 问题内容: 我有以下问题,我有HTML表单,该表单上载了一些其他信息。但是它只允许上传小于10MB的文件。但是,当用户尝试上传更大的内容时,$ _ POST和$ _FILES数组都为空(我希望$ _POST将具有一些值,而$ _FILES将具有一些值,但会指示存在上传错误)。 像这样有几个问题(空的$ _POST,$ _ FILES),但是我没有找到任何解决方案或解释。 HTML形式: uploa

  • 问题内容: 经过一整天的研究和尝试,我终于放弃了 纯AJAX的 上传文件(ps:本文如何与JQuery异步上传文件?埋了我的最后希望) 我的问题可能没什么意义,但是我仍然想知道为什么ajax(或XMLHttpRequest)不能处理这个问题?为什么文件不能像真正的httprequest那样传输? 问题答案: 出于安全原因,JavaScript无法读取本地文件,因此我们无法使用AJAX发送数据。 但

  • 我使用dropwizard制作了一个非常传统的文件上传方法。 所以我在资源中有一个这样的方法 里面没有什么特别的,它只是保存到一个路径,使用java.nio库,就像这样 它只是不会上传excel文件。我在其他地方读到excel文件和它们的底层类型受到怀疑。请问我需要做什么?

  • 在PhpStorm的最新版本(2018年)中,所以它在项目的2017年版本中,我有一个名为<code>User_model的文件。php</code>,并且PhpStorm不将其识别为php文件,而是将其识别成纯文本文件。 但它并不总是如此;我最近才注意到。 我意识到问题出在文件名中()。因为只要我更改文件名(例如,),该文件就会立即被识别为php文件。 是不是(< code>User_model