게시판 번호 및 게시판 번호로 검색 질문드립니다ㅠㅠ
본문
안녕하세요.
게시판 테스트 중인데
카테고리별로 게시판을 검색하려고 하면
게시판 번호가 아래 처럼 변합니다.
카테고리 지정 전
카테고리 지정 후
카테고리를 지정해도 게시판 번호 똑같았으면 하는데
어떤걸 수정해야 될까요??
추가로 검색할때 게시판 번호로 검색하고싶은데
번호로 검색할수 있는 기능이 없더라구요
php 에서 wr_num, wr_id, $list['num']
전부 다 동원해봤는데 번호로 찾는게 안됩니다ㅠㅠ
제가 분명 코드를 잘못입력한거같은데 도와주시면 감사하겠습니다!
1. 게시판에서 카테고리 지정후에도 게시판 번호가 전체 번호로 보였으면 좋겠습니다.
2. 게시판 검색시 번호로도 조회하고 싶습니다.
답변 3
1. list.skin.php
echo $list[$i]['num'];
->
echo $list[$i]['wr_id'];
2.
* list.skin.php
<select name="sfl" id="sfl"> 아래에
<option value="wr_id" <?php echo get_selected($sfl, 'wr_id'); ?>>번호</option>
추가
* /lib/common.lib.php, function get_sql_search()
switch ($field[$k]) {
case "mb_id" : // 아래에
case "wr_id" :
추가
해당부분은 실제로 db에 저장된 게시판 번호가 아닙니다.
게시판을 보여줄 때, list.php, search.php 등에서 검색 또는 회원의 조건에 따라 게시물을의 갯수를 계산하여 사용자 또는 게시판 설정에 따라 유동적으로 바뀌는 값입니다.
실제로 저장되는 게시판 번호는 wr_id라고 볼 수 있으며, 단순한 기본키이며 작성마다 +1씩 증가하는 형태입니다.
그런 형태이기 때문에 중간에 삭제된 부분의 번호가 채워지거나 하지 않습니다.
또한 그누보드의 경우 코멘트와 게시판 글이 같은 테이블에 저장되고, 삭제되므로 wr_id를 게시판 번호로 활용하기 어렵고, 그렇기에 위와 같은 방법으로 요청시 게시글마다 별도의 게시판 번호가 출력됩니다
해당 번호를 이용한 검색을 하려면 이러한 부분을 고려하여 검색하셔야 하므로 일반적으로 작성된 그누보드 내의 db검색쿼리로는 검색이 불가능합니다.
별도로 저 부분을 생각해서 코드를 만들어내시거나, db테이블의 구조를 바꿔 속도까지 최적화하는 방법 등으로 개발하셔야 합니다.
일단 쉽게 말씀드리면
전체 게시글 수를 for문으로 돌면서 1씩 밑에서부터 증가 되는 겁니다.
그렇기 때문에 검색 값이 하나면 1로 나오는 것입니다.
1. 게시판에서 카테고리 지정후에도 게시판 번호가 전체 번호로 보였으면 좋겠습니다.
DB 테이블상에 wr_id 이 증가값이니 $list[$i]['wr_id'] 으로 변경 하시면 해당 되는 리스트의 wr_id 값이 표시 됩니다.
2. 게시판 검색시 번호로도 조회하고 싶습니다.
검색시 조건에 wr_id 추가 하시면 됩니다.