2013-03-28 72 views
-1

我正在创建一个网页,测试部分网页的想法。我想了解如何进行会话保护页面。我已经密码保护了页面,但任何人都可以通过输入url来访问页面。我想保护我的页面,所以没有人能做到这一点。我有三个页面:index.html,它具有发送password.php和password.php的形式,它使用“if statments”确保密码和用户名正确(这里是“if statment”) 。会话保护

if ($username == 'mgmb99'){ 
    if ($password == 'mgmb91mas'){ 
    header('Location: youhere.php'); 
    } else { 
    echo 'your username or password is wrong.<a href="http://www.passwordtest.comze.com"> go back to login page </a>'; 
    }} else { 
    echo 'your username or password is wrong.<a href="http://www.passwordtest.comze.com"> go back to login page </a>'; 
    }; 

,并且是该页面,一旦你登录的youhere.php

回答

0
$_SESSION['connect']=0; 

会话设置连接值为0

目前此项检查:

if((!$_SESSION['connect'])) 

将始终返回true,因为如果$_SESSION['connect']未设置,则!$_SESSION['connect']将为true。同样​​将是真实的。

尝试设置$_SESSION['connect']为true或1或类似物,或者改变检查是:当会话变量未设置

if(!array_key_exists('connect',$_SESSION)) 
0

(! $_SESSION['connect'])意愿是真实的,而且当它被设置为0.因此,如果你想保护youhere.php,你需要分配另一个值并检查它。

而且session_destroy()将删除所有会话变量,所以你登录,你去youhere.php但如果你刷新页面,你会立即被注销