2017-09-30 16 views
1

こんにちは、PHPフォームからxamppにレコードを挿入する別の方法を探しました。私は私の最後の質問からすべての答えを組み合わせ、これに私のコードを変更しhttps://www.youtube.com/watch?v=aXcp7IYi41QMySQLデータベースに挿入されたPHPフォームは、予期しない結果で重複して生成される

:私はこの1つに遭遇

HTML:insert.phpため

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="css/bootstrap.min.css"> 
    <link rel="stylesheet" href="css/font-awesome.min.css"> 
    <link rel="stylesheet" href="css/style.css"> 
    <title>BOOTSTRAP</title> 
</head> 
<body> 
<div class="inquiry col-md-6"> 
     <h1>Inquire Now</h1> 
      <form method="post" action="insert.php" id="frmBox" onsubmit="return formSubmit();"> 
       <div class="form-group"> 
        <label for="InputName">Name*</label> 
        <input class="form-control" type="text" id="inputName" placeholder="Name" name="CustName"> 
       </div> 
       <div class="form-group">  
        <label for="InputLocation">Location*</label> 
        <input class="form-control" type="text" id="inputLocation" placeholder="Location" name="Location"> 
       </div> 
       <div class="form-group"> 
        <label for="SelectDate">Date of Event*</label> 
        <select class="form-control" id="SelectMonth" name="Month"> 
         <option>Jan</option> 
         <option>Feb</option> 
         <option>Mar</option> 
         <option>Apr</option> 
         <option>May</option> 
         <option>Jun</option> 
         <option>Jul</option> 
         <option>Aug</option> 
         <option>Sept</option> 
         <option>Oct</option> 
         <option>Nov</option> 
         <option>Dec</option> 
        </select> 
        <select class="form-control" id="SelectDay" name="Day"> 
         <option>1</option> 
         <option>2</option> 
         <option>3</option> 
         <option>4</option> 
         <option>5</option> 
         <option>6</option> 
         <option>7</option> 
         <option>8</option> 
         <option>9</option> 
         <option>10</option> 
         <option>11</option> 
         <option>12</option> 
         <option>13</option> 
         <option>14</option> 
         <option>15</option> 
         <option>16</option> 
         <option>17</option> 
         <option>18</option> 
         <option>19</option> 
         <option>20</option> 
         <option>21</option> 
         <option>22</option> 
         <option>23</option> 
         <option>24</option> 
         <option>25</option> 
         <option>26</option> 
         <option>27</option> 
         <option>28</option> 
         <option>29</option> 
         <option>30</option> 
         <option>31</option> 
        </select> 
        <select class="form-control" id="selectYear" placeholder="Year" name="Year"> 
         <option>2017</option> 
         <option>2018</option> 
         <option>2019</option> 
         <option>2020</option> 
         <option>2021</option> 
         <option>2022</option> 
        </select> 
       </div> 
       <div class="form-group">  
        <label for="InputNumber">Number of Guests*</label> 
        <input class="form-control" type="Number" id="inputNumber" placeholder="Number" name="Guests"> 
       </div> 
       <div class="form-group">  
        <label for="InputContact">Contact Number*</label> 
        <input class="form-control" type="text" id="inputContact" placeholder="Contact Number" name="ContactNum"> 
       </div> 
       <input class="btn btn-default" type="submit" value="submit" name="submit"> 
      </form> 
     </div> 
    </div> 
    </div> 
<!--SCRIPT--> 
    <script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> 
    <script type="text/javascript"> 
     function formSubmit(){ 
      $.ajax({ 
       type:'POST', 
       url:'insert.php', 
       data:$('#frmBox').serialize(), 
       success:function(response){ 
        $('#success').html(response); 
       } 
      }); 
      var form=document.getElementById('frmBox').reset(); 
      return false; 
     } 
    </script> 
<script src="js/jquery-3.2.1.min.js"></script> 
<script src="js/bootstrap.min.js"></script> 
<script src="js/script.js"></script> 
</body> 
</html> 

この1

?php 
    $servername="localhost"; 
    $username="root"; 
    $dbpassword=""; 
    $dbname="catering"; 

    $conn=mysqli_connect($servername,$username,$dbpassword,$dbname); 
    if(!$conn){ 
     die("Could Not Connect:".mysqli_connect_error()); 
    } 
    else{ 
     $CustName=test_input($_POST['CustName']); 
     $Location=test_input($_POST['Location']); 
     $Month=test_input($_POST['Month']); 
     $Day=test_input($_POST['Day']); 
     $Year=test_input($_POST['Year']); 
     $Guests=test_input($_POST['Guests']); 
     $ContactNum=test_input($_POST['ContactNum']); 

     $sql="INSERT INTO inquiry(CustName,Location,Month,Day,Year,Guests,ContactNum)VALUES('$CustName','$Location','$Month','$Day','$Year','$Guests','$ContactNum')"; 

     if(mysqli_query($conn,$sql)){ 
      echo "Thank you for Inquiring"; 
     } 
     else{ 
      echo "Failed to Inquire. Please try again"; 
     } 
     mysqli_close($conn); 
    } 
    function test_input($data){ 
     $data=trim($data); 
     $data=stripslashes($data); 
     $data=htmlspecialchars($data); 
    } 
?> 

名前、場所、月、日、年、ゲスト、連絡先などのテスト情報を提出すると、以前のコードよりも優れています。服従の権利? URLはもはや変更されず、データベースに正常に接続されています。しかし、私がデータベースにアクセスすると、結果は次のようになります。

PIC OF DATABASE 皆さんが見る通り、すべてがゼロで、GuestおよびContactNumにのみ表示されています。最初に提出しようとすると、私は2つの結果を得ました。すべてゼロで、2つの列にのみ表示されます。あなたはここで何が問題になると思いますか?それはサーバーエラー、セットアップエラー、インストールエラーがありますか?または宣言エラー?名前の不一致?私は何が欠けていますか?助けてください。ありがとうございました。参照用

相続人は、私の前の質問:Submission of PHP Form to XAMPP MySQL database

+0

、あなたのinqiry表に – scaisEdge

+0

@scaisEdgeあなたは空の値を提出することによって何を意味するautoincement列を持っていないようだ。私は、テーブル名を変更しましたか?コードで変更または変更する必要があるのは何ですか?私のデータベースには?私は何をしなければならないのですか?あなたは私に正しい方向を指してくれますか? –

+0

あなたはinsert.phpを呼び出しているようですが、$ _POSTには適切な値がありません。インデックスエントリの$ _POSTに正しい内容があることを確認してください。 – scaisEdge

答えて

0

私は最終的にこれを解決しました。 ..あなたは空の値を提出している

CustName > customer_name 
Location > customer_location 
Month > date_month 
Day > date_day 
Year > date_year 
Guests > number_guests 
ContactNum > customer_contact 
関連する問題