board.php 글보기 권한 설정
본문
지금 현재 board.php 파일에 이렇게 설정해두어서 모든 게시판에서
본인글이나 관리자만 볼수 있게 되었는데요.
이번에 새로 만든 게시판 한개에서는 레벨2이상인 모든 회원들이 볼 수 있어야하거든요~
혹시..스킨별로 이렇게 설정이 가능할까요?
가능하다면 board.php에는 이렇게 해두고
새로만든 게시판 스킨에서 처리하는 방법이나
여기 board.php 소스에서 해당게시판 예외처리 할 수 있는 방법이 있는지 궁금합니다.
아시는분들 계시면 답변 부탁드리겠습니다.
감사합니다.
// 자신의 글이거나 관리자라면 통과
if (($write['mb_id'] && $write['mb_id'] === $member['mb_id']) || $is_admin) {
;
} else {
// 비밀글이라면
if (strstr($write['wr_option'], "secret"))
{
// 회원이 비밀글을 올리고 관리자가 답변글을 올렸을 경우
// 회원이 관리자가 올린 답변글을 바로 볼 수 없던 오류를 수정
$is_owner = false;
if ($write['wr_reply'] && $member['mb_id'])
{
$sql = " select mb_id from {$write_table}
where wr_num = '{$write['wr_num']}'
and wr_reply = ''
and wr_is_comment = 0 ";
$row = sql_fetch($sql);
if ($row['mb_id'] === $member['mb_id'])
$is_owner = true;
}
$ss_name = 'ss_secret_'.$bo_table.'_'.$write['wr_num'];
if (!$is_owner)
{
//$ss_name = "ss_secret_{$bo_table}_{$wr_id}";
// 한번 읽은 게시물의 번호는 세션에 저장되어 있고 같은 게시물을 읽을 경우는 다시 비밀번호를 묻지 않습니다.
// 이 게시물이 저장된 게시물이 아니면서 관리자가 아니라면
//if ("$bo_table|$write['wr_num']" != get_session("ss_secret"))
if (!get_session($ss_name))
goto_url('./password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);
}
set_session($ss_name, TRUE);
}
}
답변 2
board.php 를 복사에서 게시판에 따라서 include 해주는 방법이 있긴 한데,
권장 드리는 방법은 board.php는 기본으로 놔두고 스킨에서 제한을 두는것을 권장 드려요
그렇게 작업하시면 나중에 수정하시기 더 복잡하고 어려워 질것 같네요
해당 게시판 스킨 디렉토리에 view.head.skin.php 파일 만들어서 처리하세요. 공용으로 사용되는 board.php를 수정하는 건 그다지 권장하지 않습니다.