채택완료

게시글 비공개 관련질문드려봅니다.

2018-07-21 (토) 12:37:06 2,585

게시판의 뷰페이지에서 관리자가 비공개를하면 게시물이 안보이게 하고싶은데요.

이거 어려울까요.?

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트

여분필드를 다쓰고 있다면 wr_option 필드를 이용하시는걸 추천드리고 싶습니다.

1.write.skin.php

<?php  if($is_admin){ ?>

<input type="checkbox" id="closed"  value="closed" name='closed'  <?php if (strstr($write['wr_option'], 'closed')){echo "checked";}?>> <label for="closed">비공개</label>

<?php }?>

2.write_update.php 

$mail = '';
if (isset($_POST['mail']) && $_POST['mail']) {
    if(preg_match('#mail#', strtolower($_POST['mail']), $matches))
        $mail = $matches[0];
}

밑에 추가

$closed = '';
if (isset($_POST['closed']) && $_POST['closed']) {
    if(preg_match('#closed#', strtolower($_POST['closed']), $matches))
        $closed = $matches[0];
}

SQL문중에 

[insert]

wr_option = '$html,$secret,$mail', ==> wr_option = '$html,$secret,$mail,$closed',

[update]

wr_option = '{$html},{$secret},{$mail}',  ==> wr_option = '{$html},{$secret},{$mail},{$closed}',

3.view.skin.php

<?php if (strstr($view['wr_option'], 'closed')){?>

비공개 내용

ex) 해당게시물은 관리자에 의해 비공개 처리되었습니다.

<?php }else{?>

기존 게시물 내용

<?php }?>

4. 테이블 필드변경

ALTER TABLE 해당테이블명
    CHANGE COLUMN `wr_option` `wr_option` SET('html1','html2','secret','mail','closed') NOT NULL AFTER `ca_name`;

단순히 관리자가 해당글을 비공개로 체크해서 뷰페이지에서 해당내용이 안보이게 하는 기능이라면

여분필드를 하나 이용해서 작업하시면 될듯 싶습니다.

1. 해당 게시판 스킨에 write.skin.php 파일을 여서서 해당내용을 추가합니다. (wr_1필드 사용)

<?php  if($is_admin){ ?>

<input type="checkbox" id="closed"  value="closed" name='wr_1'  <?php echo get_checked('closed',$write['wr_1']);?>> <label for="closed">비공개</label>

<?php }?>

2. view.skin.php 파일을 여셔서 해당내용을 추가합니다.

<?php if($view['wr_1']=="closed"){?>

비공개 내용

ex) 해당게시물은 관리자에 의해 비공개 처리되었습니다.

<?php }else{?>

기존 게시물 내용

<?php }?>

답변에 대한 댓글 2개

감사합니다 당장 적용해볼께요 !
여분필드는 다쓰고 있는데 다른걸로 해도되나요?
ㅜㅜ 어느부분에 넣어야 할까요..

비공개체크해도 비공개가 되지 않아요..

답변을 작성하려면 로그인이 필요합니다.