【问题标题】:No file upload on php built-in web serverphp内置Web服务器上没有文件上传
【发布时间】:2017-09-14 22:56:34
【问题描述】:

我有以下html表单:

<form method="post" enctype="multipart/form-data">
   File: <input type="file" name="file"><br>
   Name: <input type="text" name="file_name"><br>
   <input type="submit" name="action" value="Upload">
</form>

但文件永远不会被上传。文本字段只是作为调试代码。

以下php代码:

  <?php
  echo "<pre>";
  print_r($_POST);
  echo "</pre>";
  ?>

当我填写所有表单值时给出以下输出:

数组(

[文件名] => abc

[动作] => 上传)

我正在运行一个 php 服务器,如下所示:

php -nS 本地主机:8000 -t .

我在这里做错了吗?全部在本地运行,我上传的文件长度不到 10 个字节。

【问题讨论】:

  • 尝试使用 $_FILES 获取文件
  • 文件信息应该位于$_FILES superglobal
  • PHP 不会为您上传文件。你必须告诉它上传文件。另外,使用 $_FILES 抓取它以便能够上传它。
  • @tdoggy 我之前有代码要上传,这只是调试的东西。问题出在 _POST -> _FILES。

标签: php html forms webserver


【解决方案1】:

您将在此变量中找到有关上传文件的数据:$_FILES["file"],而不是在 $_POST 变量中。

【讨论】:

    【解决方案2】:

    首先,确保 PHP 配置为允许文件上传。

    在您的“php.ini”文件中,搜索 file_uploads 指令,并将其设置为 On:

    file_uploads = 开启

    【讨论】:

    • 我在 web 服务器上使用了 -n 选项,它会忽略任何 php.ini 文件。
    猜你喜欢
    • 2011-07-02
    • 2013-04-26
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    • 2020-11-25
    • 2017-06-02
    • 1970-01-01
    相关资源
    最近更新 更多