窗口关闭时如何破坏会话?

时间:2012-10-22 05:39:17

标签: php javascript

我想在关闭窗口时销毁会话,所以我使用代码

java脚本代码:

<script>
function killSession() {
    location = 'index.php?destroySession=true';
}
 </script>

php代码:

<?php 
     if (isset($_GET['destroySession']) && $_GET['destroySession'] == "true") {
    session_destroy();
    $closeWin = "window.close()";
} else {
    $closeWin = "";
}
?>

体:

<body onload="<?php echo $closeWin; ?>"  onunload="killSession();">

但它没有给我足够的响应。我想在窗口关闭时销毁会话。它可能如何?

3 个答案:

答案 0 :(得分:1)

当浏览器关闭时,PHP会话过期。http://www.php.net/manual/en/function.setcookie.php如果没有发生这种情况,请立即查看手册,修改后的配置文件会出现问题。

答案 1 :(得分:0)

 $closeWin = "window.close()";
 echo "<script>".$closeWin."</script>";

答案 2 :(得分:0)

首先从代码中删除onload="<?php echo $closeWin; ?>",然后更改为您的php代码,如下所示:

<?php 
     if (isset($_GET['destroySession']) && $_GET['destroySession'] == "true") {
        session_destroy();
        $closeWin = "window.close()";       
        echo "<script>".$closeWin."</script>";
}
?>

希望这能解决您的问题