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

최고관리자를 추가하고 싶어요.. 채택완료

열코딩 11년 전 조회 4,517

권한을 따로 주지 않고 최고관리자를 하나 더 만들고 싶은데 어디를 수정해야 할까요??

 

DB에 직접 아이디를 추가하면 되려나요?? 추가 한다면 어느 테이블 인가요? ㅠㅠ

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

답변 3개

채택된 답변
+20 포인트
11년 전

/lib/common.lib.php 779번 라인

    if ($config['cf_admin'] == $mb_id) return 'super'; 아래에

     if ("추가아이디" == $mb_id) return 'super';

 

이렇게 하고 추가 아이디 권한을 회수하려면 추가한 줄만 삭제하거나 주석처리 합니다

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

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

11년 전
감사합니다~ 
로그인 후 평가할 수 있습니다

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

최고관리자 구분은 db의 멤버테이블에서 하는게 아니라 config테이블에서 하는 거에요.

 

원래 한명만 가능한데 제가 필요해서 예전에 사용한 방법이었어요. 

 

제가 어디까지 수정했는지 기억이 잘 안나서 안될수도 있거나 다른거에서 오류가 날수도 있어요...

 

예전에 수정했던거라 요즘거 다운받은거로 알려드릴께요.

 

일단 최고관리자는 사이트 환경설정테이블인 db의 gb_config에 저장됩니다.

 

이 테이블을 불러와서 이사이트의 최고관리자는 $config['cf_admin​'] 이다 라는 선언을 /common.php에서 해줘요.

 

근데 최고관리자인 is_admin체크는 /lib/common.lib에서 하게되요.

 

/lib/common.lib에서는 common.php에서 설정한 $config['cf_admin']의 값이 현재 나의값인 $mb_id와 일치하는가를 체크한후 일치한다면 super라는 최고관리자 권한값을 리턴해주고 아니라면 현재 값에 맞는 것을 재확인해서 리턴해줘요.

 

여기서 $config['cf_admin']값을 db에서 직접 두개로 입력해주시고 구분하시면되요.

 

저는 admin과 subadmin이라는 값을 db의 gb_config테이블의 cf_admin값에 'admin||subadmin' 이라고 입력해두고 사용했었어요. (예전에요..)

 

이렇게 적용하는 방법은 관리자인지 체크하는 /lib/common.lib의 is_admin펑션에서(검색을 is_admin으로 하시면대요)

 

</span></p><p><span style="font-size: 12px; line-height: 18px; font-family: 돋움, Dotum, Helvetica, sans-serif;"></span><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">if ($config['cf_admin'] == $mb_id) return 'super'; // 이전에 있던 검색방식이고요</span></font><span style="font-family: 돋움, Dotum, Helvetica, sans-serif; font-size: 12px; line-height: 18px;">​</span></p><p> </p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">//제가 사용했을거라 예상되는 방식</span></font></p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">$adminChk = explode("||", $config['cf_admin']);// 이렇게하면 </span></font><span style="font-family: 돋움, Dotum, Helvetica, sans-serif; font-size: 12px; line-height: 18px;">$adminChk[0] = admin, </span><span style="font-family: 돋움, Dotum, Helvetica, sans-serif; font-size: 12px; line-height: 18px;">$adminChk[1]</span><span style="font-family: 돋움, Dotum, Helvetica, sans-serif; font-size: 12px; line-height: 18px;">​ = subadmin</span><span style="font-size: 12px; line-height: 18px; font-family: 돋움, Dotum, Helvetica, sans-serif;">​</span></p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">if($adminChk[0] == $mb_id){</span></font></p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">return 'super';</span></font></p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">}else if($adminChk[1] == $mb_id){</span></font></p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">return 'super';</span></font></p><p><font face="돋움, Dotum, Helvetica, sans-serif"><span style="font-size: 12px; line-height: 18px;">}</span></font></p><p> </p><p><span style="font-size: 12px; line-height: 18px; font-family: 돋움, Dotum, Helvetica, sans-serif;">

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

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

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

로그인