表单数据正在提交,但不会进入mySQL

时间:2014-02-06 04:43:27

标签: php html mysql forms

我的数据库连接是正确的,我可以选择并回显我的表行。但是,我的表单数据没有更新我的数据库。我正在尝试在同一页面上提交表单,因此我将操作留空了。这是我的php:

<?php
if (isset($_POST['submit'])) {

    $con=mysqli_connect("localhost","hey","password!","dbname");
    $sql="INSERT INTO StudentList (StudentNum, LastName, FirstName, Address, City, State, Zip, Balance, FirstTermAttended)
    VALUES('$_POST[inputID]','$_POST[inputLast]','$_POST[inputFirst]','$_POST[inputAddress]','$_POST[inputCity]','$_POST[inputState]','$_POST[inputZip]','$_POST[inputBalance]','$_POST[inputTerm]')";
    echo "It worked";
}
?>

在这里我的表格:

   <form class="form-horizontal" role="form" method="post" action="">
                <div class="form-group">

                    <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputID" placeholder="Student ID Number">
                    </div>
                 </div>


                <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputLast" placeholder="Last Name">
                    </div>
                 </div>

                <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputFirst" placeholder="First Name">
                    </div>
                </div>

                 <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputAddress" placeholder="Street Address">
                    </div>
                </div>

                 <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputCity" placeholder="City">
                    </div>
                </div>

                 <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputState" placeholder="State">
                    </div>
                </div>

                  <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputZip" placeholder="Zip">
                    </div>
                </div>

                <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputBalance" placeholder="Current Balance">
                    </div>
                </div>

                 <div class="form-group">
                     <div class="col-sm-offset-1 col-sm-10">
                        <input type="text" class="form-control" id="inputTerm" placeholder="First Term Attended">
                    </div>
                </div>

                  <div class="modal-footer">
          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
          <input type="submit" value="Save Student Information" id="submit" name="submit" class="btn btn-primary">
        </div>


            </form>

我的标题中也有这个,是不是搞砸了?

<?php
// Create connection
$con=mysqli_connect("localhost","hey","password!","dbname");

// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
?>

5 个答案:

答案 0 :(得分:3)

您的代码缺少 mysqli_query ,您还需要为输入字段指定名称属性。请参阅此处的示例示例http://www.w3schools.com/php/php_mysql_insert.asp

答案 1 :(得分:0)

您的<input>字段需要“name”属性。它是POST主体中使用的名称 - 而不是ID!你也应该看看prepared statements - 你现在可以注射了。此外,您实际上并未执行执行查询。阅读我链接的内容 - 它也显示执行!

答案 2 :(得分:0)

<input id=""&gt;

中将id =“name”更改为name =“name”

答案 3 :(得分:0)

您只编写了查询。您必须使用“mysqli_query”执行查询。

还为输入元素指定“name”属性。这样你就可以在$ _POST中评估它们。

答案 4 :(得分:0)

在表单中分配ID或类,而不是在表单中使用div。要进一步遵循此示例http://people.cis.ksu.edu/~hankley/d764/tut06/GopisettyPHP.html