繁体   English   中英

PHP:服务器检查用户是否已登录或注销

[英]PHP: Server check if user is logged in or out

我想要能够告诉用户是否从服务器端登录。 我目前已经设置了我的数据库中的每个用户记录都有一个属性'loggedin'(布尔值)。 如果我的用户经历了登录过程,那么他/她的'loggedin'设置为'1'(true)。 如果用户通过注销页面,我将其设置为“0”(错误)。 我的问题是,如果他们没有通过注销页面,而是他们的cookie超时?

希望能帮助任何人更好地理解我想要实现的目标。 我只是试图制作一个功能,将在用户的页面上显示自上次登录以来已经有多长时间。我现在正在计算,但它显示“用户在线”或“在线4分钟前”取决于前面描述的数据库中的'loggedin'值。 所以,如果我访问一个朋友页面,它会告诉我多久以前它们已经存在了。

**只是想可能在数据库中存储另一个属性,该属性存储登录后cookie的超时时间,因此我可以检查'loggedin'值及其超时值以确定要显示的信息。 这似乎不是一个很好的方式,但我不知道。

如果你有一个比我上面描述的方法更好的方法,请告诉我:)

感谢您的任何信息!

使用会话变量:

$_SESSION['logged'] = 1;

您可以在整个脚本中使用它们,并且它们的值将保持在重新加载之间。

创建一个这样的语句

if (isset($_COOKIE['loggedin'])) {
    echo '<p>User is online</p>';
} elseif (!isset($_COOKIE['loggedin'])) {
    echo '<p>User Offline!</p>';
} else {
    // another statement if needed to handle errors
}

我认为只要在登录脚本上创建cookie,就可以根据需要进行调整。

可能需要一点修改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM