这是正常情况,用户输入带密码的用户名,然后可以访问整个系统。假设我有一个页面a.php(或ASP),如何限制只有被授权的用户可以查看a.php,对于其他用户,如果他们在浏览器中键入(http://host/a.php),他们将得到一个错误?
而且,它是通过cookie完成的吗?如果您可以在幕后详细解释,我将不胜感激:)
答案 0 :(得分:3)
这是一个冗长的话题,需要这么多解释才能适应这个空间。我建议你阅读关于如何使用PHP创建登录系统的以下初学者水平教程。然后,您将了解幕后发生的事情:
答案 1 :(得分:1)
可以使用Cookie完成,但大多数PHP站点都使用Sessions。
有关详细信息,请参阅:http://www.php.net/manual/en/session.examples.basic.php
所涉及的步骤:
1。)创建一个登录页面,检查有效的用户名和密码,然后将密钥值保存到引用用户表的会话变量中。 signin.php(sudo-code)
session_start();
if(username is correct && password is correct)
{
$_SESSION['userkey'] = GUID from database
}
2。)创建一个包含会话变量的PHP页面,并检查变量是否已设置。
signincheck.php(sudo-code)
session_start();
$is_signed_in = false;
if (isset($_SESSION['userkey']))
{
if(isvalid userkey)
{
$is_signed_in = true;
}
}
3.)要求每个页面中的页面只需要注册。
require('signincheck.php');
if($is_signed_in === true)
{
allow access to page
}
else
{
header redirect to some other page
}