我有一个使用AJAX和PHP进行验证的注册表单,如果用户没有正确填写表单,我当前可以在注册页面上显示错误消息。当用户成功注册后,他或她将通过以下方式返回我网站的主页:
echo
"<script type=\"text/javascript\">
window.location.href='../index.php';
</script>";
exit();
我想知道一旦发生这种情况,如何在我的网站顶部显示成功消息,如果用户在消息显示后刷新主页,则消息会消失。
答案 0 :(得分:1)
您可以通过几种方式完成,但最简单的方法是将参数传递给index.php文件
index.php?status=1
然后在索引文件中,您将检查该参数是否存在以及它具有什么值(例如0 - 错误,1 - 成功)
if(isset($_GET['status'])) {
if($_GET['status'] == 1) {
echo "User was registered successfully!";
}
}
或者您可以定义(在验证用户数据和登录的脚本上)带有成功消息的会话变量并将其显示在索引页面上
if(isset($_SESSION['success'])) {
echo $_SESSION['success'];
}
提醒:不要忘记在两个页面(索引页面和验证脚本)中调用session_start()
函数
答案 1 :(得分:1)
使用会话,以便在刷新页面时不再显示。
了Serverside:
$_SESSION['success'] = 'Registered!';
echo
"<script type=\"text/javascript\">
window.location.href='../index.php';
</script>";
exit();
主页:
if (isset($_SESSION['success']) && ! empty($_SESSION['success'])) {
echo htmlentities($_SESSION['success']);
unset($_SESSION['success']);
}
确保在尝试操作会话之前使用session_start();
初始化会话
答案 2 :(得分:0)
这是特定于您的应用程序,但我要做的是在成功登录后在PHP会话中设置消息然后在index.php的页面加载时检查该会话