如何限制未登录用户对您网站的访问?

时间:2018-12-27 17:35:30

标签: php if-statement session

好吧,现在我想限制对登陆页面的访问,唯一的访问方式应该是登录,如果未设置会话,则下面的代码应该将浏览器重定向到登录页面(成功登录将设置“用户名”会话)

if (!isset($_SESSION['username'])){
    header('login.php');
}

我设置了一张小支票,可以通知我是否设置了会话

if(isset($_SESSION['username'])){
        echo "Session is set!";
    }
    else{
        echo "Session not set!";
    }

然后我登录,所以我的代码说“会话已设置!”,是的,现在让我们退出并尝试手动访问此页面...几秒钟后,我进入我的索引页面,代码显示“会话”没有设置!”。那我在该页面上做什么呢?我不应该重定向到login.php吗?

所以这里的mt问题是您知道为什么(!isset ...函数不起作用以及如何解决吗?

1 个答案:

答案 0 :(得分:3)

您的标头调用错误。应该是:

header("Location: index.php");

您可能需要包括完整的URL,请查看文档:

http://php.net/manual/en/function.header.php