테스트 사이트 - 개발 중인 베타 버전입니다

회원 권한 특정 숫자만 노출 채택완료

Suprussy73 3년 전 조회 1,977

안녕하세요

 

관리자 회원관리 부분의 권한이 기본적으로 1~10으로 세팅 되어있는데 특정 숫자만 노출이 가능할까요?

제가 필요한 숫자는 1~4, 10 이렇게 총 5개 숫자만 노출시키고 나머지 숫자는 보이지 않게 하고 싶습니다.

 

이미지 참고 하시어 도움 부탁드리겠습니다..ㅠ

 

 

감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

"adm/admin.lib.php"

// 회원권한을 SELECT 형식으로 얻음
function get_member_level_select($name, $start_id=0, $end_id=10, $selected="", $event="")

이 함수에서
    for ($i=$start_id; $i<=$end_id; $i++) {

        switch( $i){ case 5: case 6: case 7: case 8: case 9: continue 2; } // 추가해 보세요.
        $str .= '<option value="'.$i.'"';

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

들레아빠
3년 전
딱 덜어지네요. 엑스엠엘님 대단 하시네요. 한 수 배웁니다.
S
Suprussy73
3년 전
감사합니다!!

댓글을 작성하려면 로그인이 필요합니다.

플래토
3년 전

레벨을 추출하는 함수는
/adm/admin.lib.php에 있는

 </p>

<p>

 </p>

<p>// 회원권한을 SELECT 형식으로 얻음</p>

<p>function get_member_level_select($name, $start_id=0, $end_id=10, $selected="", $event="")</p>

<p>{</p>

<p>    global $g5, $is_admin;</p>

<p> </p>

<p>    //최고관리자면 무조건 10 까지</p>

<p>    if($is_admin == 'super') {</p>

<p>        $end_id = 10;</p>

<p>    }</p>

<p> </p>

<p>    $str = "\n<select id=\"{$name}\" name=\"{$name}\"";</p>

<p>    if ($event) $str .= " $event";</p>

<p>    $str .= ">\n";</p>

<p>    for ($i=$start_id; $i<=$end_id; $i++) {</p>

<p>        $str .= '<option value="'.$i.'"';</p>

<p>        if ($i == $selected)</p>

<p>            $str .= ' selected="selected"';</p>

<p>        $str .= ">{$i}</option>\n";</p>

<p>    }</p>

<p>    $str .= "</select>\n";</p>

<p>    return $str;</p>

<p>}</p>

<p>

 

그중에서

예외를 적용하시려면

두가지 방법입니다.

 

가장쉬운것은

위 함수를 사용하지 않고 하드코딩을 하는것이고

 

여러곳에서 사용되는것이라면 함수 자체를 수정하는 방법입니다.

 

하드코딩으로 <select > <option> 처리는 아실테니

두번째 예외를 적용하는 방법은

 

</p>

<p>

 </p>

<p>// 회원권한을 SELECT 형식으로 얻음 을 하나더 만듭니다.</p>

<p> </p>

<p>function get_member_level_select2($name, $start_id=0, $end_id=10, $selected="", $event="")</p>

<p>{</p>

<p>    global $g5, $is_admin;</p>

<p>    $notselected = array(5,6,7,8,9); //선택하지 않는 레벨들</p>

<p> </p>

<p>    //최고관리자면 무조건 10 까지</p>

<p>    if($is_admin == 'super') {</p>

<p>        $end_id = 10;</p>

<p>    }</p>

<p> </p>

<p>    $str = "\n<select id=\"{$name}\" name=\"{$name}\"";</p>

<p>    if ($event) $str .= " $event";</p>

<p>    $str .= ">\n";</p>

<p>    for ($i=$start_id; $i<=$end_id; $i++) {</p>

<p>        // 이 부분을 추가합니다. (시작)</p>

<p>        foreach($notselected as $k=>$v) {</p>

<p>            if ($v == $i) </p>

<p>                continue;</p>

<p>        }</p>

<p>        // 여기까지 추가합니다. (끝)</p>

<p>        $str .= '<option value="'.$i.'"';</p>

<p>        if ($i == $selected)</p>

<p>            $str .= ' selected="selected"';</p>

<p>        $str .= ">{$i}</option>\n";</p>

<p>    }</p>

<p>    $str .= "</select>\n";</p>

<p>    return $str;</p>

<p>}</p>

<p>

입니다.

 

기존것에서 필용한 영역에만

get_member_level_select2

로 대체해서 사용하세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

S
Suprussy73
3년 전
감사합니다. 많은 도움이 되었습니다 :)

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인