개인용 게시판(1:1게시판/내글만보기) 개별 설정하기 > 그누보드5 팁자료실

그누보드5 팁자료실

개인용 게시판(1:1게시판/내글만보기) 개별 설정하기 정보

개인용 게시판(1:1게시판/내글만보기) 개별 설정하기

본문

@소울e 님께서 공유해주신 자신의 글만보기 팁에서

게시판 설정의 여분필드(bo_10)를 활용하여 관리자모드 > 게시판설정 에서

체크박스를 통해 각 게시판별로 적용시킬 수 있도록 다듬어보았습니다.

테스트 : http://false9.inour.net/work/ (tester / tester)
좌측메뉴 > 개인전용 게시판 


게시판설정에 추가한 체크박스를 통해 여분필드(bo_10) 에 "mybbs" 를 입력시키고

bo_10에 "mybbs" 값이 들어가 있는 경우에만

내글만 볼 수 있는 게시판으로 적용 합니다. 관리자는 모든글을 볼 수 있습니다.

 

3109820472_1573625518.7372.png

 


bbs/list.php
--------------------------------

80라인 쯤
$sql_search .= " and (wr_num between {$spt} and ({$spt} + {$config['cf_search_part']})) ";
바로 아래에 추가해주세요.

//개인화 처리
if($board['bo_10'] == "mybbs" && !$is_admin) {
    $sql_search .= " and mb_id = '{$member[mb_id]}' "; // 본인 글만 카운트
}

 


96라인 쯤

$sql_search = "";
$total_count = $board['bo_count_write'];

을 아래와같이 수정해주세요.

 

//개인화 처리
if($board['bo_10'] == "mybbs" && !$is_admin) {
    $sql_search = " mb_id = '{$member[mb_id]}' ";
    $sql = " SELECT COUNT * AS `cnt` FROM {$write_table} WHERE {$sql_search} ";
    $row = sql_fetch($sql);
    $total_count = $row['cnt'];
} else {
    $sql_search = "";
    $total_count = $board['bo_count_write'];
}

 

213라인 쯤

$sql = " select * from {$write_table} where wr_is_comment = 0 ";
if(!empty($notice_array))
$sql .= " and wr_id not in (".implode(', ', $notice_array).") ";
$sql .= " {$sql_order} limit {$from_record}, $page_rows ";

을 아래와같이 수정해주세요.

 

//개인화 처리
if($board['bo_10'] == "mybbs" && !$is_admin) {
    $sql_search= " and mb_id = '{$member[mb_id]}' ";
    $sql = " select * from {$write_table} where wr_is_comment = 0 {$sql_search} ";
    if(!empty($notice_array))
    $sql .= " and wr_id not in (".implode(', ', $notice_array).") ";
    $sql .= " {$sql_order} limit {$from_record}, $page_rows ";
} else {
    $sql = " select * from {$write_table} where wr_is_comment = 0 ";
    if(!empty($notice_array))
    $sql .= " and wr_id not in (".implode(', ', $notice_array).") ";
    $sql .= " {$sql_order} limit {$from_record}, $page_rows ";
}

 

 

adm/board_form.php
--------------------------------

 

255라인 쯤(적당한위치)추가해주세요.

 

<tr>
    <th scope="row"><label for="bo_10">개인화 게시판 설정</label></th>
    <td colspan="2">
        <?php echo help('개인화 게시판(로그인된 자신의 글만 볼 수 있음) 으로 설정하는 경우 체크해 주세요.') ?>
        <input type="checkbox" name="bo_10" value="mybbs" id="bo_10" <?php echo $board['bo_10']?'checked':''; ?>>
        <label for="bo_10">사용</label>
    </td>
</tr>

 

1248라인 쯤

<?php for ($i=1; $i<=10; $i++) { ?>

을 아래와같이 수정해주세요.

 

<?php for ($i=1; $i<=9; $i++) { ?>

 

 

이상입니다~

@소울e 님께 감사의 말씀 올립니다!

추천6

댓글 전체

작성하신거에 많은 도움이 되었습니다.

검색 기능은 쓸수 없는것 같은데 검색까지 가능하게 하려면 sql_search 부분을 보완해야 할것 같습니다.
의견 드려요^^
음 검색도 잘되는것으로 확인이 됩니다 ^^;
자신이 쓴 글에서만 검색결과를 보여주고 있습니다 ~

관리자모드 > 생성된 게시판의 개별설정을 통해서 체크만 해주면 되니 무제한이겠죠?
생성되어 있는 게시판 개별로 필요에따라 개인용으로 설정할 수 있어요~
제가 방금 소울e님 게시물(https://sir.kr/g5_tip/11861)을 테스트 해봤는데

관리자는 글 번호가 1, 2, 3, 4, 제대로 나타나는데
관리자가 아닌 글쓴이는 글 번호가 0, -1, 2, -3, 이런식으로 나타나고

글이 많아질 경우 관리자는 페이징 기능이 정상적으로 작동하는데
이 역시 관리자가 아닌 글쓴이는 페이징이 나타나지 않는 문제가 있는것 같습니다.

혹시 이 부분 확인해보셨나요? 해당 글에는 아무도 해당 문제의 내용을 말씀하는분이 없더라구요..
아마 펄스나인님이 작성하신 이 글도 똑같은 문제가 있을것 같은데 확인 한번 부탁드립니다.
전체 1,530 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

진행중 포인트경매

  1. 특정 회원 포인트내역 통합(정리)하기

    참여1 회 시작19.12.06 22:31 종료19.12.13 22:31
  2. [잔액관리형] 아웃백디지털상품권 10만원권 3장

    참여62 회 시작19.12.06 00:03 종료19.12.11 00:03

(주)에스아이알소프트 (06253) 서울특별시 강남구 도곡로1길 14, 6층 624호 (역삼동, 삼일프라자) 대표메일:admin@sir.kr
사업자등록번호:217-81-36347 대표:홍석명 통신판매업신고번호:2014-서울강남-02098호 개인정보보호책임자:이총

© SIRSOFT