공지사항 처리 질문입니다.
본문
안녕하세요.
게시판에서 공지를 5개 정도로 만들면 소팅이 공지 등록한 순서 대로 되는데 글쓴날짜 부터 하려면 어떻게 해야 하나요?
order by wr_datetime을 넣어야 할터인디.. 어따다가 넣는지.. ㅜㅜ
오류가 계속나서리..
bbs/list.php
// 공지 처리
if (!$sca && !$stx) {
$arr_notice = explode(',', trim($board['bo_notice']));
$from_notice_idx = ($page - 1) * $page_rows;
if($from_notice_idx < 0)
$from_notice_idx = 0;
$board_notice_count = count($arr_notice);
for ($k=0; $k<$board_notice_count; $k++) {
if (trim($arr_notice[$k]) == '') continue;
$row = sql_fetch(" select * from {$write_table} where wr_id = '{$arr_notice[$k]}'");
//$row = sql_fetch(" select * from {$write_table} order by wr_num");
if (!$row['wr_id']) continue;
$notice_array[] = $row['wr_id'];
if($k < $from_notice_idx) continue;
$list[$i] = get_list($row, $board, $board_skin_url, G5_IS_MOBILE ? $board['bo_mobile_subject_len'] : $board['bo_subject_len']);
$list[$i]['is_notice'] = true;
$i++;
$notice_count++;
if($notice_count >= $list_page_rows)
break;
}
}
답변 4
공지처리 부분을 기본 코드를 수정하시 않고 등록된 순, 먼저 등록된 글이 먼저 출력이 되게 하려면
php의 sort 함수를 사용하면 해결이 될 듯 합니다. 먼저 쓴 글일수록 wr_id 값이 작기 때문입니다.
아래의 코드처럼 sort 구문을 추가하시면 될 듯 합니다.
$arr_notice = explode(',', trim($board['bo_notice']));
sort($arr_notice);
만약 출력순서가 원하시는 것과 반대라면 rsort 를 사용하시면 될 것 같습니다.
!-->select * from {$write_table} order by wr_datetime where
select * from {$write_table} where wr_id = '{$arr_notice[$k]}' order by wr_datetime
아니 이게 맞습니다
관리자 > 게시판설정 > 하단에 보면 정렬순서 정하는 항목이 나옵니다..
답변을 작성하시기 전에 로그인 해주세요.