권한별 메뉴 다르게 보이게하기

권한별 메뉴 다르게 보이게하기

QA

권한별 메뉴 다르게 보이게하기

본문

권한별로 메뉴가 다르게 보이게 하기 위해 아래 링크처럼 해보았는데 기본테마에서는 무리없이 되는데 다른 테마를 이용하니 작동을 하지 않습니다. 왜 그런걸까요??

 

https://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=151

 

현재 쓰고 있는 테마를 봤을때 관련 있을법한 코드는 아래와 같습니다..

많은 도움 부탁 드립니다. 감사 합니다.

 


// 모바일접속 체크
    $isMobile = preg_match('/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/',$_SERVER['HTTP_USER_AGENT']);
    
    //------------------------------------------- 그누보드 메뉴D.B 가져오기 BEGIN ----------------------------------------------------
    $smenu = array();
    $smenu_code = array();
    $smenu_href = array();
    $smenu_target = array();
    
    $smenu[0][0] = $config[cf_title]; //그누보드 타이틀 = 홈페이지 제목
    $smenu_code[0][0] = "0000";
    $smenu_href[0][0] = "/";
    $smenu_target[0][0] = "_self";
    
    // 주메뉴 Query
    $sql1 = " select * from {$g5['menu_table']} where me_use = '1' and length(me_code) = '2' order by me_order, me_id ";
    $result1 = sql_query($sql1, false);
    
    for ($i=0; $row1=sql_fetch_array($result1); $i++) {
        $sql2 = " select * from {$g5['menu_table']} where me_use = '1' and length(me_code) = '4' and substring(me_code, 1, 2) = '{$row1['me_code']}' order by me_order, me_id ";
        $result2 = sql_query($sql2);
        
        $smenu[$i+1][0] = $row1['me_name'];
        $smenu_code[$i+1][0] = $row1['me_code'];
        $smenu_href[$i+1][0] = $row1['me_link'];
        $smenu_target[$i+1][0] = "_".$row1['me_target'];
        
        for ($j=0; $row2=sql_fetch_array($result2); $j++) {
                $smenu[$i+1][$j+1] = $row2['me_name'];
                $smenu_code[$i+1][$j+1] = $row2['me_code'];
                $smenu_href[$i+1][$j+1] = $row2['me_link'];
                $smenu_target[$i+1][$j+1] = "_".$row2['me_target'];
        }
    }
    
    // 메뉴에 포함된 주소인지 확인해 $id 값을 넣어주는 소스코드
    function array_search2($needle,$haystack)    { 
        foreach($haystack as $key => $array) {
        $i=0;
          foreach($array as $value) {
                // 포함되는 값을 찾음 
                if(strpos($value, $needle) !== false)  return array($key,$i);
                $i++; 
          }
        }
        return false; 
    } 

 

 

 

이 질문에 댓글 쓰기 :

답변 1


$sql1 = " select * from {$g5['menu_table']} where me_use = '1' and length(me_code) = '2' and me_level <= '{$member['mb_level']}' order by me_order, me_id ";
$sql2 = " select * from {$g5['menu_table']} where me_use = '1' and length(me_code) = '4' and substring(me_code, 1, 2) = '{$row1['me_code']}' and me_level <= '{$member['mb_level']}' order by me_order, me_id ";

레벨을 판단하는 내용이 빠져 있네요 링크처럼 설정하신게 맞다면 위 코드로 되야 합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,479 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT