我正在使用ajax和php。用户使用Ajax成功添加后,我想在另一页面上显示消息。我已经尝试过这么多。当首次在弹出窗口显示“成功”消息并在另一页面上重定向时,它正在工作。但我想首先重定向另一个页面,然后显示消息。
用户添加页面
<form action="<?php echo $action_link; ?>" method="post" id="form_user_profile" class="form-horizontal" novalidate="novalidate">
<input type="hidden" id="id" name="id" value="<?php echo $id; ?>">
<div class="form-body">
<div class="form-group">
<label class="control-label col-md-3">First Name
<span class="required" aria-required="true"> * </span>
</label>
<div class="col-md-4">
<div class="input-icon right">
<i class="fa"></i>
<input type="text" class="form-control" name="fname" value="<?php echo $user_db[0]['fname']; ?>">
</div>
</div>
</div>
<div class="form-actions">
<div class="row">
<div class="col-md-offset-3 col-md-9">
<input type="submit" class="btn green" name="submit" value="<?php echo $addupdate_msg; ?>">
</div>
</div>
</div>
</form>
验证中的Ajax
$("#form_user_profile").validate({
rules: {
fname: {
required: true
}
},
messages: {
fname: "Please enter first name"
},
submitHandler: function(form) {
$.ajax({
url: form.action,
type: form.method,
data: $(form).serialize(),
success: function(response) {
if(response == 1){
bootbox.alert("User has been added successfully.", function() {
window.location.href= "<?php echo $user_list; ?>";
});
}
}
});
}
});
动作
if (isset($_REQUEST['submit']) && $_REQUEST['submit'] == "Add") {
$fname = mysqli_real_escape_string($obj->CONN, $_REQUEST['fname']);
$user->setfname($fname);
$insert = $user->insert();
ob_get_clean();
if($insert){
echo '1';
$_SESSION['msg'] = "New user has been added successfully.";
}else{
echo '0';
}
exit;
}
答案 0 :(得分:1)
由于以下代码,在重定向用户之前会显示成功弹出窗口:
if(response == 1){
bootbox.alert("User has been added successfully.", function() {
window.location.href= "<?php echo $user_list; ?>";
});
}
如果您希望在新页面上显示消息,只需重定向用户
if(response == 1)window.location.href= "<?php echo $user_list; ?>";
在新页面成功发送客户的位置,显示消息
$(function() {
bootbox.alert(<?= $_SESSION['msg'] ?>);
});
答案 1 :(得分:1)
您可以检查您指定的网页上是否设置了$_SESSION['msg']
,如果设置为alert
。
Jquery的:
if(response == 1){window.location.href= "<?php echo $user_list ?>";}
然后,$user_list
页面:
if(isset($_SESSION['msg'])){
echo '$(document).ready(function(){
bootbox.alert('.$_SESSION['msg'].');
})';
}
请注意,我使用单引号,因此PHP认为$
不是变量。