繁体   English   中英

基于SESSION的阻止访问

[英]Block access based on SESSION

我正在基于用户的网站上工作。 因此,我为不同的用户提供了不同的部分。 我希望如果会话用户名是“ Rock”,那么他应该不能访问其他用户的个人资料,例如“ Gray”。

所以,

if $_session['username']=="rock"
{
//BLOCK ACCESS TO OTHER FILES IN FOLDER PLACED IN DIRECTORY
}

我怎么做?

谢谢

在灰色的页面上,您可以有:

if($_SESSION['username'] != 'gray'){
     header('Location: http://www.goal.com/');
     exit;
}

如果要允许某些人访问灰色的页面,则可以创建一个数组,其中包含可以访问该页面的人员。

$allowed = array('bob', 'james');

if(!in_array($_SESSION['username'], $allowed)){
     header('Location: http://www.goal.com/');
     exit;
}

或相反,如果您只想拒绝某些人可以访问。

$blocked = array('rock', 'pop');

if(in_array($_SESSION['username'], $blocked)){
     header('Location: http://www.goal.com/');
     exit;
}

如果您有多个用户,则无法对这种类型的东西进行硬编码。

假设您正在使用数据库...

// Comes from database
$username = $row['username'];

// Check session
if ($username !== $_SESSION['username']) {
    header("Location: /access/denied/page/");
    exit();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM