PHP的$ _FILES [“文件”] [“名称”]无法正常运行

时间:2014-02-03 04:09:09

标签: php html forms file

上次我在这里问了一个问题,我搞砸了,但我想我现在已经搞定了。如果我能问得更好,请告诉我:D

我正在使用带有PHP的HTML表单,并且我正在尝试获取文件名。我使用Bootstrap进行格式化,我的表格看起来像这样:

<form role="form" class="form-horizontal" action=<?php echo $_SERVER['PHP_SELF']; ?> method="post">
  <div class="form-group">
    <label for="file" class="col-sm-3 control-label">Picture</label>
    <div class="col-sm-9">
      <input style="margin-top: 7.5px;" type="file" name="file" id="file" required>
    </div>
  </div>
  <button type="submit" class="btn btn-success btn-lg btn-block">Submit</button>
</form>

然后直接在那段代码之后我就有了这个:

<?php echo "File: " . $_FILES["file"]["name"]; ?>

首次访问页面时输出正确(这是正确的):

File: 

然而,在我选择一个文件并点击提交后,php代码仍然只输出“File:”

任何人都知道为什么会这样吗?

非常感谢

1 个答案:

答案 0 :(得分:8)

您错过了enctype="multipart/form-data"代码中的<form>属性。没有它,文件将无法上传。

<form enctype="multipart/form-data" role="form" 
    class="form-horizontal" action=<?php echo $_SERVER['PHP_SELF']; ?> method="post">