如何调试使用PHP和MySQL的基于数据库的表单?

时间:2016-08-26 20:27:36

标签: php html

我有7个已填充的下拉列表,我希望它的值再次存储到另一个表中。

现在这是我的代码:

    <div id="main">
            <div id="sidebar">
                <h3>add documents</h3>
                <div class="bordered-form">

                <!-- PARA SA TEXTFIELDS -->
                <form class="add-docs" method="post">
                <ul class="linkedList">
                    <label>
                        Document Name:
                    </label>
                <div>
                    <input type="text" placeholder="Document Name" name="document_name"/>
                </div>

                    <label>
                        Amount:
                    </label>
                <div>
                    <input type="text" placeholder="Amount" name="document_amount"/>
                </div>


                <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 1
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options1="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options1.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement1" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options1?>
                </select>                   
                </div>
                </div>
                </div>


                <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 2
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options2="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options2.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement2" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options2?>
                </select>                   
                </div>
                </div>
                </div>

                    <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 3
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options3="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options3.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement3" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options3?>
                </select>                   
                </div>
                </div>
                </div>


                    <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 4
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options4="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options4.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement4" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options4?>
                </select>                   
                </div>
                </div>
                </div>

                    <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 5
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options5="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options5.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement5" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options5?>
                </select>                   
                </div>
                </div>
                </div>

                    <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 6
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options6="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options6.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement6" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options6?>
                </select>                   
                </div>
                </div>
                </div>

                    <!-- Dropdowns Here -->
                <div>
                <label>
                    Requirement 7
                </label for="requirement">
                 <div class="form-group">

                 <div class="selectContainer">

                 <?php

                     $result=mysql_query($sql);
                     $options7="";
                     while ($row=mysql_fetch_array($result)) { 
                            $id=$row["requirement_id"]; 
                            $requirement_name=$row["requirement_name"]; 
                            $options7.="<OPTION VALUE=\"$requirement_name\">".$requirement_name;
                     }
                ?>
                <select name="requirement7" class="form-control SelectWidth">               
                <option  value="0">*Select a Requirement* <?=$options7?>
                </select>                   
                </div>
                </div>
                </div>

                <br>
                <div>
                    <button name="btn-add" id="btnADD" type="submit" class="btn btn-info">ADD</button>
                    <button id="btnCANCEL" type="button" class="btn btn-info">CANCEL</button>

                </ul>
            </div>
            </div>




                </form>
        </div>
    </div>

我只想要&#39; requirements_tbl&#39;中的&#39; requirement_name&#39; / s存储到另一个名为&#39; document_tbl&#39;的表中。

我的PHP代码顶部的html文件是:

<?php

include_once 'dbconnect.php';
$sql="SELECT * FROM requirements_tbl";


if(isset($_POST['btn-add']))
{

$document_name = mysql_real_escape_string($_POST[ 'document_name' ]);
$document_amount = mysql_real_escape_string($_POST[ 'document_amount' ]);
$req1 = mysql_real_escape_string($_POST[ 'requirement1' ]);
$req2 = mysql_real_escape_string($_POST[ 'requirement2' ]);
$req3 = mysql_real_escape_string($_POST[ 'requirement3' ]);
$req4 = mysql_real_escape_string($_POST[ 'requirement4' ]);
$req5 = mysql_real_escape_string($_POST[ 'requirement5' ]);
$req6 = mysql_real_escape_string($_POST[ 'requirement6' ]);
$req7 = mysql_real_escape_string($_POST[ 'requirement7' ]);

$q="INSERT INTO document_tbl (document_name,document_amount,requirement1,requirement2,requirement3,requirement4,requirement5,requirement6,requirement7) VALUES('$document_name','$document_amount','$req1','$req2','$req3','$req4','$req5','$req6','$req7',)";




if( mysql_query($q)){


    ?>  
    <script>alert('Records successfully added!');</script>
    <?php
}


else{

    ?>
    <script>alert('Error while adding record!');</script>
    <?php
    }

}

?>

1 个答案:

答案 0 :(得分:0)

你的问题在这里(代码为可读性而包装):

lat

如果检查$q="INSERT INTO document_tbl ( document_name,document_amount,requirement1,requirement2,requirement3,requirement4,requirement5,requirement6,requirement7 ) VALUES( '$document_name','$document_amount','$req1','$req2','$req3','$req4','$req5','$req6','$req7', )"; 子句的结尾,就在结束括号内,您可以看到一个尾随的逗号,SQL数据库通常不喜欢这些逗号。它会假设您想提供另一个值,但之后没有这样做,即这是语法错误。

如评论中所述,不再支持此数据库引擎,您应尽快转移到PDO / MySQL或MySQLi。