使用LightOpenID登录/注销用户状态

use*_*406 1 php lightopenid

我试图使用LightOpenId为我的网站登录/注销用户.这工作正常,但我的问题是"如何跟踪用户登录/注销状态并采取相应的操作".

我希望用户只有在用户登录时才能访问我的网站功能,并在用户注销时重定向到登录页面.

提前致谢.

Mew*_*ewp 6

您的问题实际上与OpenID无关.

OpenID是一种身份验证协议,这意味着它只检查用户是否真的是他声称的用户 - 就像要求密码检查那样.它与您的用户登录或注销无关.

为了跟踪用户的会话,您需要使用会话.例如,验证后:

<?php
if($openid->validate()) {
    // User has logged in
    $_SESSION['identity'] = $openid->identity;
}
?>
Run Code Online (Sandbox Code Playgroud)

然后,当您想要检查您的用户是否已登录(以及他是谁)时:

<?php
if(isset($_SESSION['identity'])) {
    echo 'User is logged in as ' . $_SESSION['identity'];
} else {
    echo 'User isn\'t logged in';
}
?>
Run Code Online (Sandbox Code Playgroud)

并且为了完成,在注销时:

<?php
unset($_SESSION['identity']);
session_destroy();
?>
Run Code Online (Sandbox Code Playgroud)

如果您不知道如何使用会话,可以在手册中找到更多信息.