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는 기본으로 놔두고 스킨에서 제한을 두는것을 권장 드려요
그렇게 작업하시면 나중에 수정하시기 더 복잡하고 어려워 질것 같네요
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
해당 게시판 스킨 디렉토리에 view.head.skin.php 파일 만들어서 처리하세요. 공용으로 사용되는 board.php를 수정하는 건 그다지 권장하지 않습니다.
답변에 대한 댓글 1개
이 소스 응용해서 해보려했는데..적용이 잘 안되어서요ㅠ
어떻게 해야할지 모르겠어요ㅠ
if($bo_table == "AS_3")
{
if($member['mb_level'] == 3 || $member['mb_level'] == 9 || $member['mb_level'] == 10)
return true;
else
{
alert('잘못된 접근입니다');
location.replace("/");
}
}
-------------------------------------------------------------------------------------------
적용한 소스
if($bo_table == "A")
{
if($member['mb_level'] >= 2)
return true;
else
{
alert('잘못된 접근입니다');
location.replace("/");
}
}
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
이 소스 응용하여서 해보려했는데..잘 안되어서ㅠ어떻게 해야할지 모르겠어요~
if($bo_table == "AS_3")
{
if($member['mb_level'] == 3 || $member['mb_level'] == 9 || $member['mb_level'] == 10)
return true;
else
{
alert('잘못된 접근입니다');
location.replace("/");
}
}
-------------------------------------------------------------------------------------------
적용한 소스
if($bo_table == "A")
{
if($member['mb_level'] >= 2)
return true;
else
{
alert('잘못된 접근입니다');
location.replace("/");
}
}