HTML表单在php表单中没有得到POST


HTML Form is not getting POST in php form

我正在尝试创建简单的表单和帖子。我创造了简单的形式。但是在提交之后,实际上什么也没有收到。我创建了一个form.php文件。

form.php:

<!DOCTYPE html>
<html>
    <head>
        <title>Bootstrap 101 Template</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <!-- Bootstrap -->
        <link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet" media="screen">
    </head>
    <body>
<div class="row">
<?php
echo 'Hello World';
foreach ($_POST as $key => $value) {
        echo "<tr>";
        echo "<td>";
        echo $key;
        echo "</td>";
        echo "<td>";
        echo $value;
        echo "</td>";
        echo "</tr>";
    }
?>
<div class="col-md-6 col-md-offset-3">
<form class="form-horizontal" action="form.php" method="post">
  <div class="form-group">
    <label for="input1" class="col-sm-2 control-label">Tag#1</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input1a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input1b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <label for="input2" class="col-sm-2 control-label">Tag#2</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input2a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input2b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <label for="input3" class="col-sm-2 control-label">Tag#3</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input3a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input3b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <label for="input4" class="col-sm-2 control-label">Tag#4</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input4a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" id="input4b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-default">Submit</button>
    </div>
  </div>
</form>
</div>
</div>
        <script src="http://code.jquery.com/jquery.js"></script>
        <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
    </body>
</html>

环境:Linux mint 16php5

apache2正在运行,form.php中提供的"echo 'Hello World';"工作正常

输入需要名称,而不是id,否则$_POST数组没有键

如果没有输入的name属性,您将在$_POST中一无所获,因为输入是由名称识别的。

我已经为你替换了名字,请用我的代码替换你的代码。你完成了

<div class="col-md-6 col-md-offset-3">
<form class="form-horizontal" action="form.php" method="post" name="post-form">
  <div class="form-group">
    <label for="input1" class="col-sm-2 control-label">Tag#1</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input1a" id="input1a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input1b" id="input1b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <label for="input2" class="col-sm-2 control-label">Tag#2</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input2a" id="input2a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input2b" id="input2b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <label for="input3" class="col-sm-2 control-label">Tag#3</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input3a" id="input3a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input3b" id="input3b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <label for="input4" class="col-sm-2 control-label">Tag#4</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input4a" id="input4a" placeholder="Old Value" value="dummy">
    </div>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="input4b" id="input4b" placeholder="New Value" value="dummy">
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-default">Submit</button>
    </div>
  </div>
</form>
</div>
</div>
        <script src="http://code.jquery.com/jquery.js"></script>
        <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
    </body>
</html>
<div class="col-sm-5">
  <input type="text" class="form-control" name="input1a" id="input1a" placeholder="Old Value" value="dummy">
</div>
如上面的代码片段所示,您需要在输入标记上设置name属性,以便在向表单提交POST请求时传递数据。