当前位置:编程学习 > php >>

php 获取权限列表函数

//获取权限列表 
   public  function getPriveList($id){ 
     $sql="SELECT m.id, m.name 
              FROM jh_user AS u, jh_role AS r, jh_role_user AS ru, jh_prive AS p, jh_menu AS m 
              WHERE u.id = ru.user_id 
              AND ru.role_id = r.id 
              AND r.id = p.role_id 
              AND m.id = p.menu_id 
              AND m.status =1 
              AND m.level =1 
              AND u.id ={$id}";   
    $rs=$this->query($sql); 
    //$row=$this->fetch_assoc($rs); 
    $m1=array(); 
    while ($row=$this->fetch_assoc($rs)){ 
        $m1[]=$row; 
    } 
    $prive=array(); 
    foreach ($m1 as $key=>$v){ 
        $priveId=$v['id']; 
        $priveName=$v['name']; 
        $prive[strtoupper($priveName)]=array(); 
        $sql2="SELECT m.id, m.name 
              FROM jh_user AS u, jh_role AS r, jh_role_user AS ru, jh_prive AS p, jh_menu AS m 
              WHERE u.id = ru.user_id 
              AND ru.role_id = r.id 
              AND r.id = p.role_id 
              AND m.id = p.menu_id 
              AND m.status =1 
              AND m.level =2 
              AND m.pid ={$priveId} 
              AND u.id ={$id}";   
        $rs2=$this->query($sql2); 
        $m2=array(); 
        while ($row2=$this->fetch_assoc($rs2)){ 
            $m2[]=$row2; 
        } 
        //判断公共模块  www.zzzyk.com
        $Public=array(); 
        foreach ($m2 as $key =>$m){ 
            $pId=$m['id']; 
            $pName=$m['name']; 
            if('PUBLIC'==strtoupper($m['name'])){ 
                $sql3="SELECT m.id, m.name 
              FROM jh_user AS u, jh_role AS r, jh_role_user AS ru, jh_prive AS p, jh_menu AS m 
              WHERE u.id = ru.user_id 
              AND ru.role_id = r.id 
              AND r.id = p.role_id 
              AND m.id = p.menu_id 
              AND m.status =1 
              AND m.level =3 
              AND m.pid ={$pId} 
              AND u.id ={$id}"; 
                $rs3=$this->query($sql3); 
                $m3=array(); 
                while ($row3=$this->fetch_assoc($rs3)){ 
                    $m3[]=$row3; 
                } 
                foreach ($m3 as $val){ 
                    $Public[$val['name']]=$val['id']; 
                } 
                //print_r( $m2[$key]); 
                unset($m2[$key]); 
                break; 
            } 
        } 
            // print_r($Public); 
   
      foreach ($m2 as $key =>$m){ 
        $pId=$m['id']; 
        $pName=$m['name']; 
        $sql4="SELECT m.id, m.name 
              FROM jh_user AS u, jh_role AS r, jh_role_user AS ru, jh_prive AS p, jh_menu AS m 
              WHERE u.id = ru.user_id 
              AND ru.role_id = r.id 
              AND r.id = p.role_id 
              AND m.id = p.menu_id 
              AND m.status =1 
              AND m.level =3 <

补充:Web开发 , php ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,