Javascript 当用户关闭选项卡或窗口时销毁会话

Javascript 当用户关闭选项卡或窗口时销毁会话,javascript,jquery,logout,php,Javascript,Jquery,Logout,Php,我希望在用户关闭选项卡或窗口而未正确注销时销毁会话。我想这可能有用: javascript: $(window).on("beforeunload", function(){ alert("Beforeunload called"); $(document).load("vve_inc/php/vve_logout.php"); }); php: <?php session_start(); session_destroy(); ?> 警报可以正常工作,但ph

我希望在用户关闭选项卡或窗口而未正确注销时销毁会话。我想这可能有用:

javascript:

$(window).on("beforeunload", function(){
    alert("Beforeunload called");
    $(document).load("vve_inc/php/vve_logout.php");
});
php:

<?php
session_start();
session_destroy();
?>


警报可以正常工作,但php脚本不能。有人知道的吗?

警报会停止代码的执行

卸载时执行AJAX请求是不稳定的,并且不会始终执行


如果您只有一个注销按钮或会话超时,那就更好了。

警报会停止代码的执行

卸载时执行AJAX请求是不稳定的,并且不会始终执行


如果您只需要一个注销按钮或会话超时就更好了。

qwuertynl是正确的,但是您可以使用
ignore\u user\u abort()在PHP中,AJAX请求是否完成并不重要。我过去曾成功地大规模使用过它


调用该函数将使您的PHP脚本运行完成,无论请求是否中止。

qwuertynl是正确的,但是您可以使用
ignore_user_abort()在PHP中,AJAX请求是否完成并不重要。我过去曾成功地大规模使用过它


调用该函数将使您的PHP脚本运行到完成,而不管请求是否被中止。

若要强制注销,最好使用“无活动”选项。检查用户处于非活动状态的时间,如果超过您的treshhold,请关闭他们的会话。要强制注销,最好使用“无活动”提示。检查用户处于非活动状态的时间,如果超过您的treshhold,请关闭他们的会话。