2010-12-13 10 views
0

私はユーザーベースのWebサイトで作業しています。だから、私は別のユーザーのための異なるセクションがあります。私は、セッションのユーザー名が "Rock"の場合、他のユーザーのプロフィールに "Grey"とアクセスすることはできません。セッションに基づくアクセスをブロックする

ので、

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

私はそれをどのように行うのですか?

は、あなたが持っている可能性があり、灰色のページ

+0

私は単にgoal.com/user/grayのようなURLでそれを入力して意味。 – ryan

答えて

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

0

複数のユーザーがいる場合は、このタイプのものをハードコードすることはできません。アクセスして、データベースを使用して、あなたを想定し

...

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

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

あああ...もっと良い解決策 – ryan

関連する問題