当访问者离开网页时,如何更新mysql表?

时间:2014-05-07 05:54:33

标签: javascript php mysql

这是我的问题。

所以,我正在尝试创建我的页面,以便当somone使用PHP访问页面时

if ($_SESSION['signed_in'] == true){
    $sql = "UPDATE
            users
        SET
            user_status = 1
        WHERE
            user_id = " . $_SESSION['user_id'] . "";
    $result = mysql_query($sql);
    if (!$result){
    echo 'fix me!';
    }else{
    }
}

现在!

当用户退出或转到新页面时,我希望将user_status设置回0,这样当用户进入已登录会话的网站时,它将返回到1。

我如何使用PHP或javaScript做到这一点? 因为即使我有一个注销按钮,人们仍然会点击退出,他们将永远登录,直到他们登录并退回。

2 个答案:

答案 0 :(得分:0)

如果你的意思是在页面上使用链接,那么你可以在此之前添加一些服务器端处理。 (使用更改状态的脚本,然后进行重定向)

如果您的意思是通过输入其他地址等离开,您仍然可以使用window.unload事件在此之前触发ajax调用。

https://developer.mozilla.org/en-US/docs/Web/API/Window.onunload

答案 1 :(得分:0)

为什么不在表单上使用unload方法,以便在用户关闭站点时,将调用unload方法,然后再次将计数器设置为0。

<form onUnload="set0.php">
你可以做那样的事。希望这可以帮助。 :)