질답을 많이 찾아봐도 한눈에 볼 수 있도록 정리된 명쾌한 내용이 없더라고요..
스킨에서 적용한는건 페이징과 게시물 카운트에 문제가 있고요,
스킨에 카운트 쿼리를 넣으면 비효율적일 것 같고 해서
bbs/list.php 에서 처리가능하도록 종합해서 올려봅니다.
50라인 부근
$sql_search .= " and (wr_num between {$spt} and ({$spt} + {$config['cf_search_part']})) ";
이 부분 바로 하단에
$sql_search .= " and mb_id = '{$member[mb_id]}' "; // 본인 글만 카운트
이놈 추가
62라인
// 원본
// $sql_search = "";
// $total_count = $board['bo_count_write'];
이 부분을 아래 문구와 교체
// 본인 글만 카운트
$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'];
169라인 부근에
if ($is_search_bbs) {
$sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$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 ";
// }
이 부분을
// 본인 글만 보이기 수정
$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 ";
}
여기까지 하면 리스트와 카운트, 페이징 모두 잡힙니다,
게시판 전체글 보기부터 분류에 이르기까지, 아마도,
다만 당연히 bbs/list.php 수정이라서 모든 게시판에 일괄 적용이 되고
이대로는 관리자도 다른 회원의 글을 볼 수가 없으니
if($bo_table == "게시판이름" && !$is_admin) { // 관리자를 제외하고 특정게시판에 본인글만 보이기
이런 식으로 조건문 사용해서 원본 소스는 살려주셔야 되겠죠.
이렇게 하면 게시판만 지정해주면 뭔 스킨으로든 1;1 게시판을 만들 수 있으니
좋지 아니한가 싶습니다.
여기서 도움 주시는 뛰어난 분들께 많이 도움 받으면서 공부하고 있는데
도움 주시는 것만 낼름 받아먹기만 할 수가 없어서
미세먼지팁이라도 정리해서 올려봅니다.
제가 원래 쿼리쪽은 까막눈이나 다름없어서 혹시 문제될 수 있는 부분이 있다면 말씀주세요.
댓글 20개
$sql = " SELECT COUNT * AS `cnt` FROM {$write_table} WHERE {$sql_search} ";
를 아래로 바꾸시면 됩니다.
$sql = " SELECT COUNT(*) AS cnt FROM {$write_table} WHERE {$sql_search} ";
그리고 자세히 안봤는데
$sql = " SELECT COUNT(*) AS cnt FROM {$write_table} WHERE {$sql_search} and wr_is_comment = '0' ";
이지 않을까 싶습니다.
게시판 상단에 이게 뜨는 이유가 뭘까요??
Warning: Use of undefined constant mb_id - assumed 'mb_id' (this will throw an Error in a future version of PHP) in /www_root/bbs/list.php on line 65
Warning: Use of undefined constant mb_id - assumed 'mb_id' (this will throw an Error in a future version of PHP) in /www_root/bbs/list.php on line 181
게시글 목록
| 번호 | 제목 |
|---|---|
| 23966 | |
| 23963 | |
| 23953 | |
| 23949 | |
| 23938 | |
| 23935 | |
| 23933 | |
| 23928 | |
| 23919 | |
| 23918 | |
| 23917 | |
| 23910 | |
| 23902 | |
| 23901 | |
| 23897 | |
| 23894 | |
| 23893 | |
| 23891 | |
| 23885 | |
| 23872 | |
| 23870 | |
| 23862 | |
| 23859 | |
| 23853 | |
| 23845 | |
| 23838 | |
| 23827 | |
| 23819 | |
| 23805 | |
| 23801 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기