Php 会话保护
我正在一点一点地创建一个网页,测试部分网页想法。我想学习如何会话保护页面。我已经用密码安全地保护了一个页面,但是任何人都可以通过键入url来访问该页面。我希望会话保护我的页面,这样就没有人可以这样做。我有三个页面:index.html,它的表单发送password.php,password.php,它使用“if stations”(这里是“if statment”)确保密码和用户名是正确的Php 会话保护,php,session,password-protection,Php,Session,Password Protection,我正在一点一点地创建一个网页,测试部分网页想法。我想学习如何会话保护页面。我已经用密码安全地保护了一个页面,但是任何人都可以通过键入url来访问该页面。我希望会话保护我的页面,这样就没有人可以这样做。我有三个页面:index.html,它的表单发送password.php,password.php,它使用“if stations”(这里是“if statment”)确保密码和用户名是正确的 if($username==“mgmb99”){ 如果($password=='mgmb91mas'){
if($username==“mgmb99”){
如果($password=='mgmb91mas'){
标题('Location:youhere.php');
}否则{
回显“您的用户名或密码错误”;
}}否则{
回显“您的用户名或密码错误”;
};
,以及youhere.php,这是您登录后的页面
$_SESSION['connect']=0;
将会话中的连接值设置为0
当前此支票:
if((!$_SESSION['connect']))
将始终返回true,因为如果未设置$\u会话['connect']
,则$_会话['connect']
将为真。同样地,如果(!0)
将为真
尝试将$\u SESSION['connect']
设置为true或1或类似值,或者将检查更改为:
if(!array_key_exists('connect',$_SESSION))
(!$\u SESSION['connect'])
在未设置SESSION变量以及将其设置为0时将为true。因此,如果您想保护youhere.php,您需要分配另一个值并进行检查
另外,
session\u destroy()
将删除所有会话变量,因此您登录后,可以转到youhere.php,但如果您刷新网站,您将立即注销php网站上有大量关于会话的信息。
下面是一个存储和终止会话变量的示例。
要设置会话变量,请执行以下操作:
<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
?>
<?php
session_start();
unset($_SESSION['count']);
?>
要终止会话变量,请执行以下操作:
<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
?>
<?php
session_start();
unset($_SESSION['count']);
?>