2016-03-30 76 views
0

我正在构建一个简单的网站作为功课。它需要登录才能看到内容,但现在如果我去myserver/welcomepage.php,我可以看到内容。我用下面的代码我welcomepage:PHP - 防止未注册用户加入

if (!isset($_SESSION['Username'])) { 
    header('Location:index.php'); 
    exit; 
} 

,但如果有人试图用虚假的登录密码,然后再次进入服务器myserver/welcomepage.php他能看到的内容。 我阅读关于使用IP或cookies的信息。 你有什么建议?

+2

我会建议检查身份验证流程。在我看来,即使登录失败,你的应用程序也会设置'$ _SESSION ['用户名']。 – frz3993

+0

是的,这是一个问题。 – Christakitos

回答

0

您在登录失败时设置了$_SESSION['Username']。检查登录处理的功能,如果用户登录成功,则只设置会话变量。另外请确保您在最上面包含session_start();,并且该代码段出现在包含<html>标记的任何html之前。只有在发送任何输出之前,标题才会起作用。

+0

我想这是最不安全的方式,对吧? – Christakitos

+0

我不确定你的意思。 –

+0

我的意思是会话方式保护我的应用程序页面,否则很容易绕过? – Christakitos