Php 提交表单后显示成功消息
我试图理解jquery,特别是使用ajax在mysql表中插入和显示数据 我一直在试验这段代码,它插入并显示mysql数据库中的记录。我现在试图让它在div中显示id为“info”的成功消息,同时也显示所有记录。我似乎只做一件事,但从不同时做两件事。非常感谢 form.phpPhp 提交表单后显示成功消息,php,jquery,ajax,forms,mysqli,Php,Jquery,Ajax,Forms,Mysqli,我试图理解jquery,特别是使用ajax在mysql表中插入和显示数据 我一直在试验这段代码,它插入并显示mysql数据库中的记录。我现在试图让它在div中显示id为“info”的成功消息,同时也显示所有记录。我似乎只做一件事,但从不同时做两件事。非常感谢 form.php $(文档).ready(函数(){ 函数showComment(){ $.ajax({ 类型:“post”, url:“process_ajax.php”, 数据:“action=showcoment”, 成功:功
$(文档).ready(函数(){
函数showComment(){
$.ajax({
类型:“post”,
url:“process_ajax.php”,
数据:“action=showcoment”,
成功:功能(数据){
$(“#注释”).html(数据);
}
});
}
showComment();
$(“#按钮”)。单击(函数(){
var username=$(“#username”).val();
var review=$(“#review”).val();
$.ajax({
类型:“post”,
url:“process_ajax.php”,
数据:“username=“+username+”&review=“+review+”&action=addcomment”,
成功:功能(数据){
$(“#info”).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";
}
}
?>
将记录数据保存为数组,将消息保存为普通变量,并创建json:
$list = '';
while($row=mysqli_fetch_array($result)){
$list .= "\n<li><b>$row[username]</b> : $row[review]</li>";
}
if ($stmt->errno) {
$msg = "There was an error in saving your review. Please try again." . $stmt->error;
}else{
$msg = "Your review has been saved";
}
echo json_encode(["list"=>$list, "msg"=>$msg]);
然后在success函数中,您可以访问变量:
data.list
和data.msg
一旦启动,您将在这里得到一个错误'INSERT user\u reviews SET username=?,review=?'
如果您有多行,那么。。。你会看到发生了什么。如果这是一个你想使用的更新,而不是插入,你会不高兴的。我已经准备好了…虽然它可以工作,但是谢谢。我将尝试更新。
$list = '';
while($row=mysqli_fetch_array($result)){
$list .= "\n<li><b>$row[username]</b> : $row[review]</li>";
}
if ($stmt->errno) {
$msg = "There was an error in saving your review. Please try again." . $stmt->error;
}else{
$msg = "Your review has been saved";
}
echo json_encode(["list"=>$list, "msg"=>$msg]);
type:"post",
dataType: "json"