如果isset $ _SESSION转到此页面?

时间:2011-01-26 15:09:20

标签: php session isset

好的,在这里遇到麻烦:

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

我的问题是,如果用户登录并再次偶然发现登录页面 - 意外 - 我希望它能够识别用户已登录并将其重定向到下一页(即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;
        }

1 个答案:

答案 0 :(得分:10)

您没有提及如何在会话中存储用户,但是这样的事情应该适合您:

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

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

您需要根据会话密钥更改'user'