목록 순서 쉽게 바꾸기 > 그누보드5 팁자료실

그누보드5 팁자료실

목록 순서 쉽게 바꾸기 정보

목록 순서 쉽게 바꾸기

본문

안녕하세요.

 

졸음운전 뒷빵 사고로 3중추돌.... 차는 폐차... 현재 병원 입원중인데,  일하고 있네요 ㅠㅠ

 

 

목록 정렬때문에 불편한적 많으실거에요~~

공지사항 아래  숫자 순서대로 정렬되며,  미지정은 기존과 동일

 

 

숫자 변경 후 새로고침만 하시면 정렬 완료!!
1794962123_1766221382.8634.png

/bbs/ajax_num_list.php ( 파일생성 / 경로및 파일명은 알아서 하셔요.)

 

<?php

include_once('./_common.php');

 

if (!$is_admin) {

    echo 'no_admin';

    exit;

}

 

$wr_id = (int)$_POST['wr_id'];

$wr_9  = trim($_POST['wr_9']);

 

if (!$wr_id) {

    echo 'no_wr_id';

    exit;

}

 

$bo_table = preg_replace('/[^a-z0-9_]/i', '', $_POST['bo_table']);

if (!$bo_table) {

    echo 'no_table';

    exit;

}

 

$write_table = $g5['write_prefix'] . $bo_table;

 

sql_query("

    UPDATE {$write_table}

    SET wr_9 = '".sql_real_escape_string($wr_9)."'

    WHERE wr_id = '{$wr_id}'

");

 

echo 'ok';


------------------------------------------------------------- 

저는 여분필드9 ( wr_9) 을 사용 했습니다.

---------------------------------------------------------------------------

 

/bbs/list.php

 

// 정렬

// 인덱스 필드가 아니면 정렬에 사용하지 않음

//if (!$sst || ($sst && !(strstr($sst, 'wr_id') || strstr($sst, "wr_datetime")))) {

if (!$sst) {

    if ($board['bo_sort_field']) {

        $sst = $board['bo_sort_field'];

    } else {

        $sst  = "wr_num, wr_reply";

        $sod = "";

    }

} else {

    $sst = preg_match("/^(wr_datetime|wr_hit|wr_good|wr_nogood)$/i", $sst) ? $sst : "";

}

 

// ===============================

// wr_9 관리자 지정 정렬 (0201 게시판 전용)

// ===============================

if ($bo_table === '0201') {

 

    $sql_order = "

        ORDER BY

            (wr_9 IS NULL OR wr_9 = '') ASC,

            wr_9 ASC,

            wr_datetime DESC

    ";

 

} else {

 

    // 기본 그누보드 정렬

    $sql_order = " ORDER BY {$sst} {$sod} ";

}



 

// if(!$sst)

//     $sst  = "wr_num, wr_reply";

 

// if ($sst) {

//     $sql_order = " order by {$sst} {$sod} ";

// }

 

------------------------------------------------------------

 

 

list.skin.php

 

 

<div class="gall_box"> 
 

<div class="admin-sort-box">

    <input type="number"

           class="admin-sort-input"

           data-wr-id="<?php echo $list[$i]['wr_id']; ?>"

           value="<?php echo $list[$i]['wr_9']; ?>"

           placeholder="정렬"

           style="width:60px; text-align:center;">

</div>

 

 

 

스킨 맨 아래쪽에 

 

<script>

document.querySelectorAll('.admin-sort-input').forEach(input => {

    input.addEventListener('change', function () {

        const wrId = this.dataset.wrId;

        const value = this.value;

 

        fetch('<?php echo G5_BBS_URL; ?>/ajax_num_list.php', {

            method: 'POST',

            headers: {'Content-Type': 'application/x-www-form-urlencoded'},

            body:

                'bo_table=<?php echo $bo_table; ?>' +

                '&wr_id=' + wrId +

                '&wr_9=' + encodeURIComponent(value)

        })

        .then(res => res.text())

        .then(res => {

            if (res !== 'ok') {

                alert('정렬 저장 실패: ' + res);

            }

        });

    });

});

</script>

 

 

-------------------------------------------------------------

허접하지만 사용시 너무 편하네요~~ ㅎ

 

능력자 분께서 더 좋은 업그레이드 버전 기대 해 볼게요 ^^

 

 

 

질문은 받지 않겠습니다.

추천
5

댓글 7개

css 

.admin-sort-box {

  position: absolute;

  top: 10px;

  right: 32px;

  z-index: 20;

  background: rgba(255,255,255,0.9);

  padding: 4px;

  border-radius: 4px;

}

 

.admin-sort-input {

  font-size: 12px;

  height: 24px;

}

 

전체 2,741 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT