作为我正在构建的网络应用程序的一部分,我需要在用户更改页面时检查用户是否已登录。在普通的非ajax站点上,这很容易,因为我可以将PHP会话条件语句放在标头中,并且在每次页面更改时调用的标头将确定是否显示登录页面,但将其视为头文件仅在 ajax 应用程序中设置一次,即在初始加载时,我如何在用户发出 ajax 页面请求时检查会话是否仍然有效?由于我使用的是 pushState 和 popState,我知道我可以设置在 URL 更改时运行的条件,但我不知道如何编写检查代码以在发生这种情况时运行。
任何和所有的帮助表示赞赏。
Thanks.
您应该返回 false,以便您可以执行一些智能操作,例如将用户重定向到登录页面,或者更改您在问题中提到的标题,而不是使用die('false')
i.e.
if(!isset($_SESSION['valid_user'])) {
return false;
}
或者更好的是,将 json 对象返回到脚本并使用 jquery/javascript 更改标头。
$response = array();
if(!isset($_SESSION['valid_user'])) {
$response['logged_in'] = false;
} else {
$response['logged_in'] = true;
}
// return to jquery for handling
return json_encode($response);
不管怎样,你说你正在构建一个网络应用程序,所以你可能想尝试处理事件而不是终止程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)