首次登录时不会创建php会话

时间:2014-12-24 19:04:42

标签: php session logging

我在设置会话时遇到问题。 每次我提交登录网站时都应该创建会话,但不是这样,我被重定向到notvalid.php。 会话仅在我第二次尝试登录时创建

session_start();是我网站每个页面的第一行。

这是连接功能:

public static function Login($name, $pass)
    {
    if (!empty($name) && !empty($pass))
        {
        global $dbh;
        $result = $dbh->query("SELECT * FROM users WHERE username = '" . $name . "' AND password = '" . $pass . "'");
        $row = $result->fetch(PDO::FETCH_ASSOC);
        if ($row > 0)
            {
            $userid = $row['userid'];
            $_SESSION['userid'] = $userid;
            $_SESSION['login'] = 'true';
            echo '<META HTTP-EQUIV="Refresh" Content="0; URL=userindex.php">';
            }
          else
            {
            echo "incorrect username or password.";
            $_SESSION['login'] = 'false';
            }
        }
    }

此函数检查会话是否存在:

public static function checklogin()
    {
    if ($_SESSION['login'] == 'true')
        {
        return $_SESSION['userid'];
        }
      else
        {
        echo '<META HTTP-EQUIV="Refresh" Content="0; URL=notvalid.php">';
        }
    }

我试图进入有或没有www的网站,我试图按照他们的建议去做

PHP login session wont work on first page load in a NEW window with no cache

但没有任何帮助。

任何帮助都将得到帮助。

0 个答案:

没有答案