【发布时间】:2016-03-19 06:50:58
【问题描述】:
我正在尝试理解 jquery,尤其是使用 ajax 在 mysql 表中插入和显示数据。
我一直在试验这段代码,它插入和显示来自 mysql 数据库的记录。我现在正试图让它在 id 为“info”的 div 中显示成功消息,同时还显示所有记录。我似乎只做一个,但从来没有两个。非常感谢。
form.php
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
function showComment(){
$.ajax({
type:"post",
url:"process_ajax.php",
data:"action=showcomment",
success:function(data){
$("#comment").html(data);
}
});
}
showComment();
$("#button").click(function(){
var username=$("#username").val();
var review=$("#review").val();
$.ajax({
type:"post",
url:"process_ajax.php",
data:"username="+username+"&review="+review+"&action=addcomment",
success:function(data){
$("#info").html(data);
}
});
});
});
</script>
</head>
<body>
<form>
Username : <input type="text" name="username" id="username"/>
</br>
Review : <input type="text" name="review" id="review" />
</br>
<input type="button" value="Send Comment" id="button">
</form>
<div id="info" />
<ul id="comment"></ul>
</body>
</html>
Process_ajax.php
<?php
include_once("db_conx.php");
$action=$_POST["action"];
if($action=="showcomment"){
$show="Select * from user_reviews ORDER by date desc";
$result = $db_conx->query($show);
while($row=mysqli_fetch_array($result)){
echo "<li><b>$row[username]</b> : $row[review]</li>";
}
}
else if($action=="addcomment"){
$username= ($_POST['username']);
$review= ($_POST['review']);
$stmt = $db_conx->prepare('INSERT user_reviews SET username = ?, review=?');
$stmt->bind_param('ss', $username, $review);
$stmt->execute();
if ($stmt->errno) {
echo "There was an error in saving your review. Please try again." . $stmt->error;
}else{
echo "Your review has been saved";
}
}
?>
【问题讨论】:
-
一旦你开始做这件事,你会在这里得到一个错误
'INSERT user_reviews SET username = ?, review=?',如果你有不止一行,那么......你会看到会发生什么。如果您要使用的是 UPDATE 而不是 INSERT,您将不会高兴。 -
我开始了……它确实有效,但谢谢。我会尝试更新。
标签: php jquery ajax forms mysqli