채택완료

bbs/new.php 에서 게시물 소팅하는 법이 궁금합니다.

2016-09-19 (월) 13:44:19 4,541

안녕하세요.

new.php을 사용하여 최신글을 나오게 하는데요.

게시물 순서를 다중으로 하고 싶은데 해당게시판 필드하나 만들고 순자로해서 큰 숫자가 상위로 나오게 하고 싶은데 안되네요. 소팅을 다중으로 하고 싶습니다.

어떻게 해야 할까요?

$sql_order = " order by wr_10 DESC, wr_num ASC ";  // 안됌 ㅠㅠ wr_10가 안먹네요. 

Copy
$sql_common = " from {$g5['board_new_table']} a, {$g5['board_table']} b, {$g5['group_table']} c where a.bo_table = b.bo_table and b.gr_id = c.gr_id and b.bo_use_search = 1 "; $gr_id = isset($_GET['gr_id']) ? substr(preg_replace('#[^a-z0-9_]#i', '', $_GET['gr_id']), 0, 10) : '';if ($gr_id) {    $sql_common .= " and b.gr_id = '$gr_id' ";} $view = isset($_GET['view']) ? $_GET['view'] : ""; if ($view == "w")    $sql_common .= " and a.wr_id = a.wr_parent ";else if ($view == "c")    $sql_common .= " and a.wr_id <> a.wr_parent ";else    $view = ''; $mb_id = isset($_GET['mb_id']) ? ($_GET['mb_id']) : '';$mb_id = substr(preg_replace('#[^a-z0-9_]#i', '', $mb_id), 0, 20); if ($mb_id) {    $sql_common .= " and a.mb_id = '{$mb_id}' ";}$sql_order = " order by wr_10 DESC, wr_num ASC "; $sql = " select count(*) as cnt {$sql_common} ";$row = sql_fetch($sql);$total_count = $row['cnt']; $rows = G5_IS_MOBILE ? $config['cf_mobile_page_rows'] : $config['cf_new_rows'];$total_page  = ceil($total_count / $rows);  // 전체 페이지 계산if ($page < 1) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)$from_record = ($page - 1) * $rows; // 시작 열을 구함 $group_select = '<label for="gr_id" class="sound_only">그룹</label><select name="gr_id" id="gr_id"><option value="">전체그룹';$sql = " select gr_id, gr_subject from {$g5['group_table']} order by gr_id ";$result = sql_query($sql);for ($i=0; $row=sql_fetch_array($result); $i++) {    $group_select .= "<option value=\"".$row['gr_id']."\">".$row['gr_subject'];}$group_select .= '</select>'; $list = array();$sql = " select a.*, b.bo_subject, b.bo_mobile_subject, c.gr_subject, c.gr_id {$sql_common} {$sql_order} limit {$from_record}, {$rows} ";$result = sql_query($sql);for ($i=0; $row=sql_fetch_array($result); $i++) {    $tmp_write_table = $g5['write_prefix'].$row['bo_table'];     if ($row['wr_id'] == $row['wr_parent']) {         // 원글        $comment = "";        $comment_link = "";        $row2 = sql_fetch(" select * from {$tmp_write_table} where wr_id = '{$row['wr_id']}' ");        $list[$i] = $row2;         $name = get_sideview($row2['mb_id'], get_text(cut_str($row2['wr_name'], $config['cf_cut_name'])), $row2['wr_email'], $row2['wr_homepage']);        // 당일인 경우 시간으로 표시함        $datetime = substr($row2['wr_datetime'],0,10);        $datetime2 = $row2['wr_datetime'];        if ($datetime == G5_TIME_YMD) {            $datetime2 = substr($datetime2,11,5);        } else {            $datetime2 = substr($datetime2,5,5);        }     } else {         // 코멘트        $comment = '[코] ';        $comment_link = '#c_'.$row['wr_id'];        $row2 = sql_fetch(" select * from {$tmp_write_table} where wr_id = '{$row['wr_parent']}' ");        $row3 = sql_fetch(" select mb_id, wr_name, wr_email, wr_homepage, wr_datetime from {$tmp_write_table} where wr_id = '{$row['wr_id']}' ");        $list[$i] = $row2;        $list[$i]['wr_id'] = $row['wr_id'];        $list[$i]['mb_id'] = $row3['mb_id'];        $list[$i]['wr_name'] = $row3['wr_name'];        $list[$i]['wr_email'] = $row3['wr_email'];        $list[$i]['wr_homepage'] = $row3['wr_homepage'];         $name = get_sideview($row3['mb_id'], get_text(cut_str($row3['wr_name'], $config['cf_cut_name'])), $row3['wr_email'], $row3['wr_homepage']);        // 당일인 경우 시간으로 표시함        $datetime = substr($row3['wr_datetime'],0,10);        $datetime2 = $row3['wr_datetime'];        if ($datetime == G5_TIME_YMD) {            $datetime2 = substr($datetime2,11,5);        } else {            $datetime2 = substr($datetime2,5,5);        }     }     $list[$i]['gr_id'] = $row['gr_id'];    $list[$i]['bo_table'] = $row['bo_table'];    $list[$i]['name'] = $name;    $list[$i]['comment'] = $comment;    $list[$i]['href'] = './board.php?bo_table='.$row['bo_table'].'&amp;wr_id='.$row2['wr_id'].$comment_link;    $list[$i]['datetime'] = $datetime;    $list[$i]['datetime2'] = $datetime2;     $list[$i]['gr_subject'] = $row['gr_subject'];    $list[$i]['bo_subject'] = ((G5_IS_MOBILE && $row['bo_mobile_subject']) ? $row['bo_mobile_subject'] : $row['bo_subject']);    $list[$i]['wr_subject'] = $row2['wr_subject'];} $write_pages = get_paging(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, "?gr_id=$gr_id&amp;view=$view&amp;mb_id=$mb_id&amp;page=");
|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트

order by idx desc , mb_name asc

이런식으로 쿼리에 넣으세요 

답변에 대한 댓글 1개

2016-09-19 (월) 14:00:18
네 이미 $sql_order = " order by wr_10 DESC, wr_num ASC ";
이렇게 넣어 보았는데 bbs/new.php 에서 wr_10 자체가 안먹는듯하네요,.

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