Php 无法在数据库中插入必填字段

Php 无法在数据库中插入必填字段,php,mysql,database,insert,Php,Mysql,Database,Insert,我在第一篇文章中不清楚。就是这样 reservation.php <table style="border: 4px;"> <tr> <!-- Start JQuery Pop-up --> <script src="js/jquery.js" type="text/javascript"></script> <script src="popup2

我在第一篇文章中不清楚。就是这样

reservation.php

<table style="border: 4px;">

    <tr>
                    <!-- Start JQuery Pop-up -->

        <script src="js/jquery.js" type="text/javascript"></script>
        <script src="popup2.js" type="text/javascript"></script>

        <td style="border: 2px solid #000;"><center><img src="images/comp.jpg" height="30" width="50"><br /><b><div id="button"><a href="#" class="pcbutton">PC 05</a></div></b></center>

        </td>


    <!-- Jquery Pop-Up code starts here including the insert query -->
            <?php
                echo '<div id="popupContact">';
                echo '<a id="popupContactClose">x</a>';
                echo '<center><form method = "POST" action="reserve.php">';

                                        mysql_connect("localhost","root","") or die (mysql_error());
                                            mysql_select_db('seat_reservation') or die (mysql_error());

                                            $roomNumber = '400';
                                            $chairNumber = 5;

    //In this part, I try to insert in the database without submitting the form yet.

                                            $insert = mysql_query("INSERT INTO reservation (chair_status, room_id, chair_number) VALUES (0, '$roomNumber', '$chairNumber')");



    //I'm trying to retrieve the inserted data and do the checking.

                                    $query = mysql_query("SELECT * FROM reservation WHERE room_id = '$roomNumber' AND chair_number = '$chairNumber'");
                                            $row = mysql_fetch_assoc($query);

                                            $_SESSION['roomno'] = $row['room_id'];
                                            $_SESSION['chairnum'] = $row['chair_number'];

                                            echo '<h1>Information </h1>';
                                                echo 'Fullname : <input type="text" name="student_name" /><br /><br />';
                                                echo 'Student ID No. : <input type="text" name="stud_id" />';
                                                echo '<br /><br />';
                                                echo '<input type="submit"  value="Submit" />';
                                            echo '</form></center>';
                                        echo '</div>';

                                        echo '<div id="backgroundPopup"></div>';
                                        ?>
                                    <!-- End JQuery Pop-up -->  
                                        <td style="border: 2px solid #000;"><center><img src="images/comp.jpg" height="30" width="50"><br /><div id="button2"><a href="#" class="pcbutton"><b>PC 04</b></a></div></center>
                                        </td>
    //This is another table that's exactly the same from the code above only that this has a different PC number
                                        <?php
                                        echo '<div id="popupContact">';
                                            echo '<a id="popupContactClose">x</a>';
                                            echo '<center><form method = "POST" action="reserve.php">';

                                            mysql_connect("localhost","root","") or die (mysql_error());
                                            mysql_select_db('seat_reservation') or die (mysql_error());

                                            $roomNumber = '400';
                                            $chairNumber = 4;

                                            $insert = mysql_query("INSERT INTO reservation (chair_status, room_id, chair_number) VALUES (0, '$roomNumber', '$chairNumber')");

                                            $query = mysql_query("SELECT * FROM reservation WHERE room_id = '$roomNumber' AND chair_number = '$chairNumber'");
                                            $row = mysql_fetch_assoc($query);

                                            $_SESSION['roomno'] = $row['room_id'];
                                            $_SESSION['chairnum'] = $row['chair_number'];

                                            echo '<h1>Information </h1>';
                                                echo 'Fullname : <input type="text" name="student_name" /><br /><br />';
                                                echo 'Student ID No. : <input type="text" name="stud_id" />';
                                                echo '<br /><br />';
                                                echo '<input type="submit"  value="Submit" />';
                                            echo '</form></center>';
                                        echo '</div>';
                                        echo '<div id="backgroundPopup"></div>';
                                        ?>



你的代码有点不完整。不要单独使用
mysql\u查询
。包括额外的代码以捕获错误或在插入数据时发生错误时显示输出

$insert = mysql_query("INSERT INTO reservation (chair_status, room_id, chair_number) VALUES (0, 400, 5)");

// I added the below lines to catch how many rows were inserted and if not, what error occured
$inserted_rows = mysql_affected_rows(); 

if ($inserted_rows !=0)
  echo 'Error occurred, through out error'. mysql_error();

首先,请为“提交”按钮命名,以便您可以使用它检查表单是否已提交:

if($_POST['name_of_your_submit_button']){
  //mysql insert code here
}
我看不出您是否真的在insert查询中使用了用户输入的数据:

$insert = mysql_query("INSERT INTO reservation (chair_status, room_id, chair_number) VALUES (0, 400, 5)");
确保通过使用诸如print\r或var\u dump之类的调试代码获得一些值

print_r($_POST);

这是你的完整代码吗?我在您的任何SQL语句中都找不到
student\u name
student\u id
。这是一个表,对吗?我希望看到一些循环,但没有看到任何循环。你介意把代码分开吗,或者在弹出部分加上注释,然后在表中加上代码,因为这有点让人困惑。而且你已经注释掉了很多代码,你介意删除你实际上没有使用的代码吗?也许最好停止回答这个问题,因为OP已经将其替换为。
print_r($_POST);