2010-12-13 58 views
0

我正在基於用戶的網站上工作。所以,我針對不同的用戶有不同的部分。我希望如果會話用戶名是「Rock」,他不應該能夠訪問其他用戶的配置文件,如「灰色」。基於SESSION的塊訪問

所以,

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

我該怎麼辦呢?

謝謝

+0

通過訪問我的意思只是像goal.com/user/gray網址鍵入出來。 – ryan 2010-12-13 13:04:49

回答

0

在灰色的頁面,你可以有:

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; 
} 
+0

太棒了..感謝...知道了。 – ryan 2010-12-13 13:15:03

0

如果你有多個用戶,你不能硬編碼這種類型的東西。

假設使用一個數據庫,你...

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

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

哦,是的...一個更好的解決方案 – ryan 2010-12-13 13:51:41