board.php 글보기 권한 설정

board.php 글보기 권한 설정

QA

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는 기본으로 놔두고 스킨에서 제한을 두는것을 권장 드려요

 그렇게 작업하시면 나중에 수정하시기 더 복잡하고 어려워 질것 같네요

 

네~ 답변 감사합니다~ 제가 초보라..참고할만한 소스들을 찾아봤는데..딱 쓸만한 소스가 안보여서요^^;;혹시 소스 알려주실 순 없을까요? 아님 팁이라도 조금만 부탁드려봐도 될까요?

이 소스 응용하여서 해보려했는데..잘 안되어서ㅠ어떻게 해야할지 모르겠어요~

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("/");
}
}

해당 게시판 스킨 디렉토리에 view.head.skin.php 파일 만들어서 처리하세요.
공용으로 사용되는 board.php를 수정하는 건 그다지 권장하지 않습니다.

아아 네~ 답변 감사합니다~ 근데..제가 초보라..잘 몰라서요ㅠㅠ 혹시 관련된 소스나 팁이라도 조금만 부탁드려도 될까요?

이 소스 응용해서 해보려했는데..적용이 잘 안되어서요ㅠ
어떻게 해야할지 모르겠어요ㅠ

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("/");
}
}

답변을 작성하시기 전에 로그인 해주세요.
전체 65
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT