공지사항 글 제목과 글쓴이 보기권한

공지사항 글 제목과 글쓴이 보기권한

QA

공지사항 글 제목과 글쓴이 보기권한

답변 1

본문

베이직 게시판에

1.글제목과 글쓴이 보기권한을 넣어 자기가 쓴글 외에는 글제목과 글쓴이를 볼수없게 만들어놨습니다.

  물론 관리자는 글제목과 글쓴이를 모두 볼 수 있습니다.(해당게시판은 비밀글 사용은 '무조건'입니다.)

코드는 아래와 같습니다.

----------------------------------------------------------------------------------------------------------------

<!-- 게시판 제목을 보이지 않게 하는 부분 시작  -->
                        <!-- ?php echo $list[$i]['subject'] ?> 원본 -->
                        <?php if($member['mb_level'] < '3' and $member[mb_id] != $list[$i]['mb_id']){echo "제목을 볼 권한이 없습니다.";}else{echo $list[$i][wr_subject];}?>
                        <!-- 게시판 제목을 보이지 않게 하는 부분 끝  -->

 

- 중간생략 -

 

<!-- 게시판 게시글 작성자 이름 보이는 부분 시작 -->
            <!-- <td class="td_name sv_use">?php echo $list[$i]['name'] ?></td> 원본 -->
            <td class="td_name sv_use"><?php if($member['mb_level'] < '3' and $member[mb_id] != $list[$i]['mb_id']){echo "비공개";}else{echo $list[$i][wr_name];}?></td>
            <!-- 게시판 게시글 작성자 이름 보이는 부분 끝 -->

----------------------------------------------------------------------------------------------------------------

2. 그런데 공지사항으로 올라간 글제목과 글쓴이도 볼수없게 되어서, 

  extend/user.config.php파일에서 공지사항을 볼수있는 권한을 강제로 레벨2로 변경했습니다.

  코드는 아래와 같습니다.

----------------------------------------------------------------------------------------------------------------

<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
?>

<?php
// 공지글의 경우 권한설정 배재하기

if($bo_table && $wr_id){

    $notice = sql_fetch("select bo_notice from {$g5['board_table']} where bo_table='$bo_table' ");

    $notice_arr = array_map('trim', explode(',', $notice['bo_notice']));

    $notice_chk = in_array($wr_id, $notice_arr);

    // 공지글의 경우 해당게시판 읽기권한을 강제로 1로 변경함.

    if($notice_chk == true){

        $board['bo_read_level'] = 2;

    }

}
 ?>

----------------------------------------------------------------------------------------------------------------

3. 공지사항을 클릭하면 글을 볼수는 있지만, 제목과 글쓴이가 '제목을 볼 권한이 없습니다.',와 '비공개'로 되어 있어서 클릭을 안할거 같은데요.

공지사항 게시글에 대해서만 글제목과 글쓴이만 원래 제목과 글쓴이가 표시되게 할수는 없는지요.

고수님들의 조언부탁드립니다.

이 질문에 댓글 쓰기 :

답변 1

extend. 안써도 if문 잘짜면 가능할것 같아요.


                         if($member['mb_level'] < '2'){ //2레벨 미만이면 어떠한 경우에도 글제목 안보이고 작성자 안보임
                             $list[$i]['wr_subject'] = "제목을 볼 권한이 없습니다.";
                             $list[$i]['wr_name'] = "비공개";
                         }else{ //2레벨 이상이라면
                             if($list[$i]['is_notice']){ //레벨 이상이고 공지라면 글제목 보이고 아이디 그대로 출력
                                $list[$i]['wr_subject'] =  $list[$i]['wr_subject'];
                                $list[$i]['wr_name'] = $list[$i]['wr_name'];
                             }else{ //공지가 아니라면
                                 if($member['mb_level'] < '3' && $member[mb_id] != $list[$i]['mb_id']){ //공지가 아니고 3레벨 이하이고 글작성자가 아니라면
                                     $list[$i]['wr_subject'] = "제목을 볼 권한이 없습니다.";
                                     $list[$i]['wr_name'] = "비공개";
                                 }
                             }
                         }
 
echo $list[$i]['wr_subject']; 
echo $list[$i]['wr_name']; 
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 17,127
© SIRSOFT
현재 페이지 제일 처음으로