Javascript 注销时未检测到会话过期
当我的会话过期时,我想重定向到login.php,我用两个页面进行测试,第一个页面和第二个页面的注销将检测到过期的会话,并且该页面已断开连接。我这样做: 在我的index.php中,我有:Javascript 注销时未检测到会话过期,javascript,php,ajax,session,session-state,Javascript,Php,Ajax,Session,Session State,当我的会话过期时,我想重定向到login.php,我用两个页面进行测试,第一个页面和第二个页面的注销将检测到过期的会话,并且该页面已断开连接。我这样做: 在我的index.php中,我有: <script type="text/javascript"> $(document).ready(function(){ setInterval(function() { $.post( "sessioncheck.php", function( data ) {
<script type="text/javascript">
$(document).ready(function(){
setInterval(function() {
$.post( "sessioncheck.php", function( data ) {
if(data == "-1")
{
alert("Your session has been expired!");
document.location = "login.php";
}
});
}, 3000);
});
</script>
session_start();
if(empty($_SESSION))
{
//expired
echo "-1";
}
else
{
//not expired
echo "1";
}
在logout.php中:
chdir("../../..");
include_once("config/config.php");
$_SESSION = array();
header("location:".__BACKURL."/login.php");
它不起作用,我不知道问题出在哪里。您是否为会话定义了名称?例如:
$\u会话[“用户”]
。也没有任何东西会破坏会话,例如unset($\u session)
或session\u destroy()
是的,我解决了问题,它在另一个文件中,谢谢