onclick事件,其中PHP SESSION变量在每次页面加载时发生


onclick event with PHP SESSION variable happening on every page load

我正在尝试实现一个注销机制,它将由一个点击链接组成,该链接应将SESSION变量设置为True,将用户发送到登录页面,PHP将在该页面检查同一变量的值,如果设置为True则在重新生成会话之前销毁cookie。问题是,每次加载页面时,都会发生onclick事件(我可以通过回显页面顶部的变量来确认这一点,该变量始终返回1),但第一次除外,因为变量仍未设置,所以我会收到一条错误消息。这是我的代码:

JavaScript:

<script>
function destroy_session(){
    <?php $_SESSION["Logout"]=True; ?>
}
document.getElementById("logout").onclick=destroy_session;
</script>

HTML:

<li><a href="../index.php" id="logout"><i class="fa fa-sign-out fa-fw"></i> Logout</a>

PHP:

if ($_SESSION['Logout']){
    session_unset();     
    session_destroy();
    session_start();
}

我做错什么了吗?有办法解决这个问题吗?

js:

function profile_logout(){
    $('#response').html("Please wait...");
     $.post( "/logout.php", function( data ) {    
                 $('#response').html(data);    
      });
        return false;
 }

html:

<li id="response"><a href="javascript:void(0);" onclick="profile_logout();"><i class="fa fa-sign-out fa-fw"></i> Logout</a>

logout.php:

<?php
@session_start();
session_unset();
session_destroy();
echo "Logout success !";
?>

注意:不要忘记添加库jquery

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

例如:)