我需要以下问题的帮助。以下代码对我不起作用。有谁可以帮助我吗?我已经在youtube视频中观看了此视频,但找不到它为什么没有运行。 我想通知您,我正在127.0.0.1上运行WAMP服务器,这很奇怪,浏览器未给出关于错误等的任何响应。
这是我的PHP代码:
<?php
$host="127.0.0.1";
$username = "root";
$password = "";
$db = "data";
$conn = mysqli_connect($host, $username, $password, $db);
if (isset($_POST['fname'])){
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$gender = $_POST['slct'];
$query = "Insert into users (firstname, lastname,gender) Values(?,?,?))";
$stmt = $conn->prepare($query);
$stmt->bind_param('sss', $fname, $lname, $gender);
$stmt->execute();
if(mysqli_affected_rows($conn) > 0){
echo "insert";
}
else{
echo "no";
}
}
?>
这是我的html代码:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
<h3> Insert Data into Database</h3>
<form id="form1" method="post">
<p> Enter FirstName</p>
<input type="text" name="fname" class="form-control">
<br>
<p> Enter lastName</p>
<input type="text" name="lname" class="form-control">
<br>
<p>Enter Gender</p>
<select class="form-control" name="slct">
<option value="Male">Male </option>
<option value="Female">Female</option>
</select>
<br><br><br>
<button class="btn btn-primary" onclick="insertData()">Submit</button>
</form>
</body>
<script>
function insertData(){
var formData = $('#form1').serialize();
$.ajax({
url:'http://127.0.0.1/PHP/insert.php',
data:formData,
type:'Post',
success:function(response){
console.log(response);
},
error:function(err){
console.log(err);
}
})
}
</script>
</html>
任何帮助将不胜感激。 预先谢谢你!
答案 0 :(得分:1)
您的插入命令不正确。将...(?,?,?))";
更改为...(?,?,?)";
最好使用像netbeans这样的IDE,因为它们会突出显示此类错误。另外,您应该从mysqli切换到PDO。而且您不需要检查受影响的行。 $stmt->execute()
返回一个布尔值