3

好的,这里有问题:

我创建了一个登录脚本,所以在一个人登录后,他们将被引导到另一个页面。而且,如果他们尝试访问其他页面之一,我会将他们重定向到登录页面。

我的问题是,如果用户登录并再次偶然发现登录页面 - 我希望它能够识别用户已登录并将他们重定向到下一页(即 index2.php) ?? 有麻烦:-(

到目前为止,这是我的代码:

require_once "inc/functions.class.php";
$quickprotect = new functions('inc/ini.php');

if (isset($_SESSION['goAfterLogin'])){
    $goto = $_SESSION['goAfterLogin'];
    unset($_SESSION['goAfterLogin']);
}
else $goto = $quickprotect->settings['DEFAULT_LOGIN_SUCCESS_PAGE'];

if (isset($_POST[username])) {
    if($quickprotect->login($_POST[username], $_POST[password])) header ("Location: $goto");
}

这是我在功能页面中存储用户会话的方式

 public function is_logged_in() {
        //Determines if a user is logged in or not. Returns true or false;
            if ($_SESSION['logged_in'] === md5($this->settings[ADMIN_PW])) {
                return true;
            }
            else return false;
        }
4

1 回答 1

12

您没有提到如何在会话中存储用户,但这样的事情应该为您做:

if(isset($_SESSION['user']))
{
    header("Location: index2.php");
    exit;
}

这将检查您的会话中是否有用户,如果有,则重定向到index2.php.

您需要'user'根据您的会话密钥进行更改。

于 2011-01-26T15:12:30.643 回答