BOARD

팁·활용

그누보드 게시판 리스트를 추가 여분 필드(wr1~wr10) 기준으로 정렬하는 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 22회 작성일 26-10-02 15:26

본문

그누보드 게시판 리스트를 추가 여분 필드(wr1~wr10) 기준으로 정렬하는 방법

그누보드 관리자 모드와 소스 설정을 수정하여 게시판 목록을 추가 여분 필드 값 기준으로 정렬하는 구체적인 절차를 확인합니다.

그누보드 게시판 여분 필드 정렬 옵션 추가 방법

그누보드 관리자 모드의 게시판 설정에서 여분 필드(wr_1~wr_10)를 리스트 정렬 기준으로 활용하려면 관리자 파일인 adm/board_form.php를 수정하여 select 문 내부에 정렬 옵션을 추가해야 합니다.

1. 수정 위치 및 파일

  • 파일 경로: adm/board_form.php
  • 수정 방법: 파일 내 select 문 사이에 원하는 여분 필드 정렬 옵션 태그를 추가합니다.

2. 정렬 옵션 코드 예시

wr_10 필드를 기준으로 정렬 옵션을 추가할 때 아래와 같이 <option> 구문을 추가합니다.

<option value='wr_10+0 asc, wr_num, wr_reply'>wr_10: 추가필드 내림차순</option>

3. 다음 행동 및 적용

  • adm/board_form.php 파일을 수정한 후 관리자 페이지의 게시판 설정 화면으로 이동합니다.
  • 추가된 정렬 옵션을 선택하고 게시판 설정을 변경하면 리스트 정렬에 반영됩니다.
  • wr_1부터 wr_9까지 다른 여분 필드를 기준으로 정렬하고 싶을 때는 옵션 값 내부의 필드명을 해당 번호로 변경하여 적용할 수 있습니다.

여분 필드 숫자 기준 정렬 쿼리 작성 방법

그누보드 게시판의 여분 필드(wr_1~wr_10)에 입력된 값을 문자열이 아닌 숫자 크기 순서대로 정확하게 정렬하려면, SQL 정렬 구문에 +0 연산을 포함하여 작성해야 합니다.

1. SQL 정렬 옵션 작성 예시

관리자 페이지의 게시판 설정 화면(adm/board_form.php) 등에 정렬 옵션(<option>)을 추가할 때, value 값에 +0을 붙인 수식을 사용합니다.

  • 오름차순(숫자형) 정렬 예시
    <option value='wr_10+0 asc, wr_num, wr_reply'>wr_10 asc: wr_10 오름차순(숫자형)</option>
  • 내림차순(숫자형) 정렬 예시
    <option value='wr_10+0 desc, wr_num, wr_reply'>wr_10 desc: wr_10 내림차순(숫자형)</option>

2. 작성 시 주의 사항

  • 일반적인 wr_10 asc 형태는 문자열 기준으로 정렬되기 때문에 '10'이 '2'보다 앞으로 오는 정렬 오류가 발생할 수 있습니다. +0을 더해주는 방식을 사용하면 MySQL이 해당 값을 숫자로 인식하여 올바른 크기 순서로 정렬합니다.
  • 답글이 원글 아래에 올바르게 보이도록 하려면 정렬 구문 뒤에 , wr_num, wr_reply 조건을 함께 조합하는 것이 안전합니다.

상황별 판단 및 행동 가이드

내 상황우선할 판단다음 행동
게시판 리스트를 여분 필드(wr1~wr10) 기준으로 정렬하고 싶은 경우adm/board_form.php 파일 수정select 문 내부에 +0 연산을 포함한 정렬 옵션 추가 후 관리자 페이지에서 설정 변경
여분 필드에 저장된 숫자 값을 크기 순으로 정렬하고 싶은 경우SQL 정렬 구문에 +0 연산 포함value 속성에 wr_10+0 asc와 같이 작성하여 문자열 정렬 오류 방지

실전 FAQ

Q. 정렬 옵션 추가 시 기존 게시판 설정은 어떻게 변경해야 하나요?

adm/board_form.php 파일을 수정하여 옵션을 추가한 후, 관리자 페이지의 [게시판 관리 > 게시판 수정] 화면으로 이동합니다. '정렬 필드' 항목의 선택 상자(select)에서 방금 추가한 여분 필드 옵션을 선택하고 저장하면 즉시 적용됩니다.

Q. 여분 필드 값으로 정렬할 때 숫자가 '10', '2' 순으로 뒤섞여 정렬되는 현상이 왜 발생하나요?

여분 필드는 기본적으로 문자열(varchar) 타입으로 저장됩니다. 따라서 SQL 정렬 시 숫자의 크기가 아닌 문자열 순서로 비교가 이루어집니다. value 값에 +0을 추가하면 MySQL이 해당 값을 숫자로 변환하여 정렬하므로 정확한 크기 순서로 정렬됩니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.