通常情况下,用户输入带有密码的用户名,然后便可以访问整个系统.假设我有一个页面a.PHP(或ASP),如何限制只有被授权的用户才能查看a.PHP,对于其他用户,如果他们在浏览器中键入(http://host/a.php),他们将会收到错误消息?
而且,它是通过cookie完成的吗?如果您可以解释细节,我将不胜感激:)
解决方法:
可以使用Cookies来完成,但是大多数PHP网站都使用Sessions.
查看详细信息:http://www.php.net/manual/en/session.examples.basic.php
涉及的步骤:
1.)创建一个登录页面,检查有效的用户名和密码,然后将键值保存到引用用户表的会话变量中.
signin.PHP(sudo代码)
session_start();
if(username is correct && password is correct)
{
$_SESSION['userkey'] = GUID from database
}
2.)创建一个具有会话变量的PHP页面,并检查是否设置了该变量.
session_start();
$is_signed_in = false;
if (isset($_SESSION['userkey']))
{
if(isvalid userkey)
{
$is_signed_in = true;
}
}
require('signincheck.PHP');
if($is_signed_in === true)
{
allow access to page
}
else
{
header redirect to some other page
}