こんにちは、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
、あなたのinqiry表に – scaisEdge
@scaisEdgeあなたは空の値を提出することによって何を意味するautoincement列を持っていないようだ。私は、テーブル名を変更しましたか?コードで変更または変更する必要があるのは何ですか?私のデータベースには?私は何をしなければならないのですか?あなたは私に正しい方向を指してくれますか? –
あなたはinsert.phpを呼び出しているようですが、$ _POSTには適切な値がありません。インデックスエントリの$ _POSTに正しい内容があることを確認してください。 – scaisEdge