관리자 여러명으로 할 경우...
본문
게시판관리자를 여러명 두기 위하여 아래와 같이 소스를 수정하였습니다.
그런데 이 경우 자신보다 높은 등급이 올린 글은 삭제할 수 없고 등급이 글쓰기 등급보다
낮으면 글을 쓸 수가 없습니다.
알고 싶은 것은 게시판 관리자로 아이디를 등록하면 이 아이디 소유자는 등급에 관계없이
해당 게시판 글을 삭제하고 이동, 복사, 글쓰기를 하게 하려면 어떻게 해야 할까요?
=======================================================================
lib/common.lib.php 소스 수정
// 관리자인가?
function is_admin($mb_id)
{
global $config, $group, $board, $member;
if (!$mb_id) return;
if ($config['cf_admin'] == $mb_id) return 'super';
$group_admin = explode(",",$group['gr_admin']);
foreach($group_admin as $admin_id){
if ($admin_id == $mb_id){
$group['gr_admin'] = $admin_id;
return 'group';
}
}
$board_admin = explode(",",$board['bo_admin']);
foreach($board_admin as $admin_id){
if ($admin_id == $mb_id){
$board['bo_admin'] = $admin_id;
return 'board';
}
}
return '';
}
그런데 이 경우 자신보다 높은 등급이 올린 글은 삭제할 수 없고 등급이 글쓰기 등급보다
낮으면 글을 쓸 수가 없습니다.
알고 싶은 것은 게시판 관리자로 아이디를 등록하면 이 아이디 소유자는 등급에 관계없이
해당 게시판 글을 삭제하고 이동, 복사, 글쓰기를 하게 하려면 어떻게 해야 할까요?
=======================================================================
lib/common.lib.php 소스 수정
// 관리자인가?
function is_admin($mb_id)
{
global $config, $group, $board, $member;
if (!$mb_id) return;
if ($config['cf_admin'] == $mb_id) return 'super';
$group_admin = explode(",",$group['gr_admin']);
foreach($group_admin as $admin_id){
if ($admin_id == $mb_id){
$group['gr_admin'] = $admin_id;
return 'group';
}
}
$board_admin = explode(",",$board['bo_admin']);
foreach($board_admin as $admin_id){
if ($admin_id == $mb_id){
$board['bo_admin'] = $admin_id;
return 'board';
}
}
return '';
}
답변 1
foreach로 검색할 경우 아이디가 하나만 있을때는 오류가 발생합니다
for로 돌리시는게 좋겠습니다
그리고 관리자에서 게시판관리자로 등록시 회원레벨과 상관없이 권한이 생기실 텐데요
답변을 작성하시기 전에 로그인 해주세요.