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


Log-in/log-out user status with LightOpenID

我正在尝试使用LightOpenId为我的网站登录/注销用户。这工作得很好,但我的问题是"我如何跟踪用户登录/注销状态,并采取相应的行动"。

我希望用户访问我的网站功能,只有当他们登录和重定向到登录页面时,用户注销。

你的问题实际上与OpenID无关。

OpenID是一个身份验证协议,这意味着它只检查用户是否真的是他声称的那个人——就像要求密码检查一样。它与您的用户登录或退出无关。

为了跟踪用户的会话,你需要,嗯,使用会话。例如,验证后:

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

然后当你想检查你的用户是否登录(以及他是谁):

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

为了完成,在注销时:

<?php
unset($_SESSION['identity']);
session_destroy();
?>

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