정렬 & 검색 기능 - board page
DATE : 2023/12/02
이번엔 앞에서 만든 게시판에 (1)사용자가 원하는 카테고리 기준 정렬을 하거나
(2) 찾고자 하는 내용을 검색할 수 있는 기능을 더해보려고 한다.
이 기능을 구현하기 위한 HTML element는 이미 만들어두었기 때문에
설명은 패스하고 관련 code만 해석해보기로 하자.
(전반적인 코드는 페이징 기능 - board page에서 이미 해석함)
select tag에 들어있는 option을 하나 선택 & input에 검색하고자 하는 값을 입력해
Submit 버튼을 누르면
(1) 사용자가 고른 option tag의 value 값이
$_POST['order']으로 들어가게 된다.
(2) 사용자가 입력한 검색어는
$_POST['search_value']로 전달되며
option 값에 검색어가 들어가는 경우의 게시물만 DB에서 가져와
option 기준으로 오름차순 정렬을 실행한다.
예를 들어, 사용자가 title 카테고리를 선정한 후 " t "라는 검색어를 제시하면
title에 "t"가 들어가는 게시물만 DB에서 조회해 가져오게 되는 것이다.
이때 조회 된 게시물의 개수를
$cnt에 할당하고 페이징 기능에 필요한 값을 계산한다.
이후, start를 기준으로 10개의 게시물의 가져와 게시판 목록에 띄우게 되는 것이다.
이때 가져오는 게시물은 title에 "t"가 들어갔다는 조건을 만족하는 게시물만 포함한다.
이제 코드가 제대로 동작하는 지 직접 확인해보자.
index page에서 option: title & search: t 를 입력해보면
제목에 " t "가 들어간 게시물만 취합해, 제목 기준으로 정렬된 목록을 제공 받을 수 있다.
option: Author & search: han을 입력해보면
author에 "han"이 들어간 경우만 모아와 리스트로 제공되는 걸 볼 수 있다.
이렇게 해서 정렬 & 검색 기능을 만들어보았다!
전체 코드는 이미 공개했지만 다음으로는
사용자가 클릭한 게시물의 상세 페이지로 이동하는 기능과 관련된 내용을 살펴보도록 하자!
Last updated