여분필드(체크박스)로 체크된 게시물만 보이게 하기
본문
여분필드 wr_2 를 사용해서 체크박스로 만든 후
리스트에서는 체크된 게시물만 보이게 하고, 관리자는 모든 게시물을 볼 수 있게 하려고 하는데...
/skin/board/스킨명/write.php
<code>
<?php
// 비밀글 체크 상태 유무 베껴온 코드...
$open = '';
if( strstr($write['wr_2'], 'open') ) {
$open = 'checked';
}
?>
<tr>
<th scope="row">공개여부</th>
<td><input type="checkbox" name="wr_2" value="open" id="wr_open" <?php echo $open; ?>><label for="wr_open">공개여부</label></td>
</tr>
</code>
write.php 페이지에 추가를 했는데...
리스트에서는 어떻게 추가를 해야할까요...??
리스트가 시작되는 for 구문안에서
if( $is_admin && $list[$i]['wr_2'] !== 'open' ) 관리자이면서 wr_2가 체크되어있지 않으면 모두 노출
else 체크된 게시물만 노출
글쓰기 페이지에서 체크시 open 출력
이렇게 구현하고 싶은데 머리가 안돌아가네요ㅠㅠㅠ
답변 2
list.skin.php와 view.skin.php로 간단히 수정하시는 것도 좋으나
게시글 카운트도 정확히 내야하고 페이지 노출 수를 정확하게 하시려면
list.php 에서 코드를 손 보시는 것이 조금 더 낫습니다.
예)
1. $stx = trim($stx); 이 시작되는 라인 위 쪽에 아래 코드를 삽입
$sql_search_add = "";
if ($bo_table=='적용하실게시판명' && !$is_admin){
$sql_search_add .= " and wr_2 != '' ";
}
2. 아래 코드 {$sql_search_add} 추가
$sql = " SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM {$write_table} WHERE {$sql_search} {$sql_search_add} ";
3. 아래 코드 {$sql_search_add} 추가
if ($sca || $stx) {
$sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_search_add} {$sql_order} limit {$from_record}, $page_rows ";
} else {
$sql = " select * from {$write_table} where wr_is_comment = 0 {$sql_search_add} ";
if($list[$i]['wr_2']) {
노출
} else {
if($is_admin) {
관리자만 노출
}
}
쉽게 가셔도 될듯합니다....
!-->