❶ php 管理許可權
這樣好辦,你在數據表加一個欄位,專門代表許可權的,欄位裡面加數字代表許可權,例如 1是最高許可權,你設定的如果有九個許可權,那麼就給1、2、3、4、5。。。9 九個數字,凡是大於1的就沒有這個許可權,例如是用session控制登錄的,管理員登錄進去就是1的許可權,其他的登錄進去 只能是大於1的id也就是說 1為最高的許可權 其他的你可以分級 2為一個許可權 3又為一個許可權 而且還可以設定 2跟3有共同的許可權也有不同的許可權。程序是死的,這個是你自己定的,不用想的太復雜。
❷ php 用戶許可權管理
在管理員的 數據表中加 許可權 欄位 把AA的許可權可以設置為 河南的那個id 然後在進入很那板塊的時候判斷時候用戶是否存在許可權 管理錄入信息 大概就這樣,,,
❸ php 中用戶許可權管理出,要用到session,怎麼做呢
其實不建議用session參與許可權模塊
1.session用來記錄當前用戶名,用戶編碼,角色編碼,職位編碼等等當前用戶的基本配置信息.
2.控制許可權的類獲取session中的信息後,在根據你資料庫中許可權表做控制.
❹ php許可權管理如何實現
我得做法是,用形如:x0dx0a x0dx0a修改文章,1,刪除文章,1,新增文章,1x0dx0a這樣的字元串來保存許可權值x0dx0a讀取後explode為數組,需要校驗許可權的時候,用x0dx0aif($array["修改文章"])x0dx0a判斷是否有許可權。
❺ php許可權管理
一個頁面中彈出窗,先判斷用戶是1用戶還是2用戶,不同用戶對應不同頁面就行了。這個比較長見的是普通用戶和vip用戶,如果是vip用戶,他們會設置一些div,然後顯示,而普通用戶登入的話,這些div是隱藏的,看不到的。希望能幫助到你。。。
❻ ThinkPHP框架簡單的注冊登錄里用戶許可權控制怎麼實現
可以參照mysql的功能許可權的做法,我不知道你提問的是不是這個許可權,舉個例子:
你後台可能有貼子管理,用戶管理等等功能,假設帖子管理使用許可權是1,用戶管理使用許可權是2,沒有許可權是0
新建三個表,一個是管理員表,一個是角色表,一個是管理員和角色關系表
舉兩個角色的例子,一個是普通管理員,一個是超級管理員,當新增超級管理員角色的時候角色的時候,此時超級用戶的許可權應該是12,當新增普通管理員的時候,他只有管理帖子的許可權,那麼他的許可權就是10,這樣角色表裡面就有兩個角色了
接著,新增用戶的時候,例如新增一個用戶叫題主,新增的時候選擇一個角色是普通管理員,寫入資料庫後,順便寫進角色和用戶之間的關系表,這樣就能做到許可權的控制了,也可以細分到編輯,刪除,添加等許可權,不過要保證方法名字一樣。
當然這里只是粗略的說了一下而已,真做起來有挺多問題,嘗試一下就知道了
前台用戶注冊登錄許可權思路也差不多,自己想想,做做就清楚了
還有就是可以google一下RBAC的資料庫設計
❼ php許可權管理
這應該是頁面雙重包含的問題吧。function auth()中申請的用戶許可權控制在當前框架下的所有頁面都會發生作用(index.php頁麵包含之後,如果失敗,main.php和left.php都無法載入),你取消main.php和left.php的包含文件試試。
❽ php怎麼用進行許可權劃分
實例代碼不給你提供了,還是自己去寫的好。
提供一下思路:
按照我的方法,這樣去寫:
首先管理員表:
tb_admin #管理員表
ad_id #管理員ID
ad_username # 管理員用戶名
ad_password # 管理員密碼(多重MD5)或其他加密
ad_power # 管理員許可權 默認null
ad_super # 超級管理員 0否 1是 默認0
超級管理員擁有所有許可權,包括可以設定其他管理員的許可權
你肯定是想控制管理員左側菜單欄的許可權,首先建立一個數組,(左側菜單數組)
然後給定每一個菜單一個id 例如:
商品管理 a
新增商品 a1
商品列表 a2 (包含刪改查)
ad_power 中設定某個為 a1,a2
那麼該管理員就有新增和列表兩個許可權。
根據登錄者id查詢管理員表,得到許可權
例如:
ad_id=》3
ad_username=》guanli003
ad_password=》xayufdashfhdkajshfjahsk
ad_power=》a1,a2
ad_super=》0
//$left_menu左側菜單
$left_menu=array(
0=>array(
'flog'=>'a1',
'title'=>'新增商品',
)
)
//生成一個新的數組,只包含當前登錄者的許可權
foreach($left_menuas$k=>$v){
//判斷管理員信息許可權欄位是否有該許可權
if(strpos($v['flog'],$admin[ad_power])){
//組建新數組
}
}
在前端輸出該數組即可。
當然這只是我的一個思路,你可以擴充一下,引入自己的實際項目當中。包括,當power欄位為空時設定默認的菜單等。
❾ php後台多用戶許可權設置及實現思路
adminconfig.php 這是後台系統中所有文件許可權配置。
fun.php 這是一個功能函數
left.php 網站後台根據用戶登錄的ID來載入相對應的功能菜單
op.php 調用adminconfig.php 默認許可權文件
opsava.php 保存用戶許可權成一個php文件
好了我們先來看看 fun.php文件吧。
. 代碼如下:
<?
function findsub($keys ,$userid='abc' ) //此函數重要就是為了調用用戶的許可權信息
{
include('user/'.$userid.'.php');
foreach($bb as $key=>$submenu)
{
foreach($submenu as $subkey=>$menuitem)
{
if( $subkey == $keys )
{
return 1;
}
}
}
}
//下面為生成用戶的php許可權文件
//寫入
function cache_write($name, $var, $values) {
$cachefile = 'op/www.hzhuti.com/'.$name.'.php';
$cachetext = "<?phprn".'$'.$var.'='.arrayeval($values)."rn?>";
if(!swritefile($cachefile, $cachetext))
{
exit("File: $cachefile write error.");
}
}
//數組轉換成字串
function arrayeval($array, $level = 0) {
$space = '';
for($i = 0; $i <= $level; $i++) {
$space .= "t";
}
$evaluate = "Arrayn$space(n";
$comma = $space;
foreach($array as $key => $val) {
$key = is_string($key) ? '''.addcslashes($key, ''\').''' : $key;
$val = !is_array($val) && (!preg_match("/^-?d+$/", $val) || strlen($val) > 12) ? '''.addcslashes($val, ''\').''' : $val;
if(is_array($val)) {
$evaluate .= "$comma$key => ".arrayeval($val, $level + 1);
} else {
$evaluate .= "$comma$key => $val";
}
$comma = ",n$space";
}
$evaluate .= "n$space)";
return $evaluate;
}
//寫入文件
function swritefile($filename, $writetext, $openmod='w') {
if(@$fp = fopen($filename, $openmod)) {
flock($fp, 2);
fwrite($fp, $writetext);
fclose($fp);
return true;
} else {
exit("File: $filename write error.");
return false;
}
}
?>
adminconfig.php 後台許可權配置文件,以一個數組形式保存
. 代碼如下:
<?
$menus = array(
'news' => array(
'caption'=>'資訊管理',
'icon'=>'admin/icon_15.gif',
'sub' => array(
'newsaddtype' => array('caption' => '分類增加', 'url' => 'news/addtype.php'),
'newstypemange' => array('caption' => '分類管理', 'url' => 'news/typemange.php'),
'newsnewsend' => array('caption' => '發布資訊', 'url' => 'news/newsend.php'),
'newsnewmange' => array('caption' => '資訊管理', 'url' => 'news/newmange.php'),
'newscomments' => array('caption' => '評論管理', 'url' => 'news/comments.php'),
),
),
'ask' => array(
'caption'=>'問卷調查',
'icon'=>'admin/icon_15.gif',
'sub' => array(
'voteadmin_subject_add' => array('caption' => '添加投票主題', 'url' => 'vote/admin_subject_add.php'),
'voteadmin_subject' => array('caption' => '管理投票主題', 'url' => 'vote/admin_subject.php'),
'voteadmin_title_add' => array('caption' => '添加投票問題', 'url' => 'vote/admin_title_add.php'),
'voteadmin_title' => array('caption' => '管理投票問題', 'url' => 'vote/admin_title.php'),
'voteadmin_question_add' => array('caption' => '添加投票答案', 'url' => 'vote/admin_question_add.php'),
'voteadmin_question' => array('caption' => '管理投票答案', 'url' => 'vote/admin_question.php'),
'voteadmin_system' => array('caption' => '投票初始配置', 'url' => 'vote/admin_system.php')
),
),
'ads' => array(
'caption'=>'廣告管理',
'icon'=>'admin/icon_15.gif',
'sub' => array(
'ada' => array('caption' => '增加廣告', 'url' => 'ada.php'),
'adm' => array('caption' => '廣告管理', 'url' => 'adm.php'),
'flashadd' => array('caption' => '焦點圖廣告增加', 'url' => 'flashadd.php'),
'flashad' => array('caption' => '焦點圖廣告管理', 'url' => 'flashad.php')
),
),
'mange' => array(
'caption'=>'系統管理員',
'icon'=>'admin/icon_15.gif',
'sub' => array(
'adminuser' => array('caption' => '管理員添加', 'url' => 'adminuser.php'),
'modpass' => array('caption' => '密碼修改', 'url' => 'modpass.php')
),
),
);
?>
left.php文件很簡單就是根據用戶登錄後ID讀出許可權
. 代碼如下:
<?
$userid = $_SESSION['adminid'];
include("op/admincofig.php");
include("op/ www.hzhuti.com /".$userid.".php");
foreach($bb as $key=>$submenu)
{
echo "<tr><td bgcolor="#D879A7" style="line-height:22px;text-align:center;color:#ffffff;"> nr <font color="#EA6A8D" face="Webdings"></font><b>".$menus[$key]['caption']."</b><br /></td></tr> nr <tr ><td bgcolor="F5E8F1">";
foreach($submenu as $subkey=>$menuitem)
{
$tmparr = explode("|",$menuitem);
echo "<font color="#EA6A8D" face="Webdings">4</font><a href='".$tmparr[1]."' target="mainframe">".$tmparr[0]."</a><br> nr";
}
echo "</td></tr> nr ";
}
op.php這個文件就是要調用我們的adminconfig.php文件,然後利用fun.php文件中函數把提供過來的數據保存成數組如圖
點擊保存我們調用了opsava.php 文件,代碼如下
. 代碼如下:
<?
include("op/fun.php");
if( $_POST )
{
$sarray = $_POST ;
cache_write($userid,'bb',$sarray);//寫入緩存
echo "<script>alert('編輯保存成功!');location='op.php?userid=".$userid."';</script>";
}
?>
保存成功後文件內容如
. 代碼如下:
<?php
$bb=Array
(
'member' => Array
(
'user_search' => '會員升級管理|user_search.php'
),
'membercy' => Array
(
'cyuser_search' => '會員升級管理|cyuser_search.php',
'cyuser_search5' => '交友會員|cyuser_search.php?grade=5'
),
'userid' => 7,
'button' => '保存編輯'
)
?>
這樣的話我們的left只要載入 7.php文件就只會顯示這里在的文件,這樣一個基本的後台許可權就完成了。
❿ php 登錄許可權問題,同一個頁面,許可權不一樣,登錄以後看到的功能也不一樣,誰有代碼最好貼出來
-----------------------------------------以下是設置許可權比較常用的一種
1----你用mysql或記事本等工具儲存用戶信息的時候加一個欄位」user_rank「,用於判斷用戶的級別(如:管理員值user_rank=admin、普通用戶user_rank=user)。
2----你在所使用的頁面前可以提取當前用戶的user_rank值,然後用if語句來判斷用戶級別,分配給當前用戶一定的許可權代碼如下:
if($user_rank == "admin")
{
/*對管理員顯示的頁面輸出*/
//執行刪除的語句
//執行增加的語句
}
else if($user_rank == "user")
{
/*對普通用戶,執行瀏覽*/
}
----------------------------------------------------------------
不明白再問我。