我的简单html php表单没有插入数据库

时间:2018-06-04 12:37:42

标签: php mysql pdo

由于某种原因,此表单不会插入我的数据库。

HTML

_http_outgoing.js:489
    throw new Error('Can\'t set headers after they are sent.');
    ^

Error: Can't set headers after they are sent.

的PHP / register.php

<form action="../php/register.php" method="post">
    <div id ="personal-form">
        <h4><b>Personal Details:</b></h4>
        <hr>

        <div class="form-group">
            <label class="sr-only" for="first-name">First name</label>
            First Name

            <input type="text" name="firstname" placeholder="" 
                   class="form-control" id="firstname">

            <button type="submit" class="btn btn-next" id="submit">
                Submit
            </button>
        </center>
        </div>
    </div>
</form>

这是 connect.php

<?php
    include('connect.php');

    if(isset($_POST["submit"])) {
        $firstname = $_POST["firstname"];
        $stmt = $conn->prepare("INSERT INTO storeowners (firstname) VALUES 
(:firstname)");

        $stmt->bindParam(':firstname', $firstname);
        $stmt->execute();

        header("location: next.php");
    }
?>

当我点击提交按钮时,它会显示 php / register.php 页面,其中包含消息成功,这是 connect.php <中相同的消息/ strong>代码,如果数据库连接成功。 我不知道问题出在哪里,因为它没有将firstname存储到数据库中,也没有给出错误。

3 个答案:

答案 0 :(得分:5)

if(isset($_POST["submit"]))

您没有name=submit的表单控件,因此这种情况永远不会成立。

您无条件地连接到数据库,但您从不使用连接执行任何操作。

答案 1 :(得分:1)

name="submit"添加到您的按钮。

<form action="../php/register.php" method="post">
      <div id ="personal-form">
        <h4><b>Personal Details:</b></h4>
        <hr>
        <div class="form-group">
           <label class="sr-only" for="first-name">First name</label>
              First Name
           <input type="text" name="firstname" placeholder="" class="form-control" id="firstname">
           <button name="submit" type="submit" class="btn btn-next" id="submit">Submit</button></center>
       </div>
     </div>
 </form>

答案 2 :(得分:0)

而不是$ _POST [“submit”]添加此

query_pipe(query_list)