board.php 글보기 권한 설정

board.php 글보기 권한 설정

QA

board.php 글보기 권한 설정

답변 2

본문

지금 현재 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("/");
}
}

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 68
© SIRSOFT
현재 페이지 제일 처음으로