2016-05-22 48 views
1

我有一些頁面,用戶存儲在會話變量中。但是對於用戶來說,可以訪問每個頁面。如何防止用戶訪問管理頁面

creation of variable session

select the table from the data base

$sql ="SELECT * FROM `pannes` WHERE `pannes`.`idDirecteur` = (
     select `idDirecteur` from `directeurs` where `directeurs`.`nomDirecteur` = '".$userName."' 
    ) order by `pannes`.`date` desc,`pannes`.`heur` desc limit $page1,14 "; 
$query = mysql_query($sql); 
+3

未來(或者甚至可能編輯這個)請使用代碼塊添加代碼作爲文本代替添加圖像。 – JimL

+0

一個簡單的修復方法可能是將用戶角色添加到用戶會話並檢查管理頁面。 if(!isset($ _ SESSION ['user'])|| $ _SESSION ['user'] ['role']!=='admin'){/ *重定向到login/frontpage/401權限被拒絕/某處* /}' – JimL

回答

0

你可以爲每個用戶創建一個會話,並檢查每個頁面上的會話:

第1頁:

<?php if(!isset($_SESSION['user1'])) die('You Dont Have Access'); ?> 

第2頁:

<?php if(!isset($_SESSION['user2'])) die('You Dont Have Access'); ?> 

第3頁:

<?php if(!isset($_SESSION['user3'])) die('You Dont Have Access'); ?> 

而在登錄頁面爲每個用戶類型定義不同的會話。