전체검색 셀렉트 조건 노출 질문드려요~!

전체검색 셀렉트 조건 노출 질문드려요~!

QA

전체검색 셀렉트 조건 노출 질문드려요~!

본문

search.php 부분에 있는 아래 함수를 head.php 부분에 적용하여 

그룹별 셀렉트가 나오고 있는데요~!

 

아래 함수에서 어떻게 변경하면 

게시판별 또는 분류별로 노출이 가능할까요?!

 

 


<?php
$group_select = '<label for="gr_id" class="sound_only">게시판 그룹선택</label><select name="gr_id" id="gr_id" class="select"><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']."\"".get_selected($_GET['gr_id'], $row['gr_id']).">".$row['gr_subject']."</option>";
$group_select .= '</select>';
?>
<?php echo $group_select ?>
    <script>document.getElementById("gr_id").value = "<?php echo $gr_id ?>";</script>

이 질문에 댓글 쓰기 :

답변 1

1) 셀렉트박스의 name 과 label 의 for 속성 등을 'gr_id' 에서 'onetable' 로 변경합니다.

 

2) sql 문을 게시판 ID 와 게시판명을 불러오는 구문으로 변경합니다.

ex.

$sql = " select bo_table, bo_subject from {$g5['board_table']} order by bo_subject ";

 

3) 셀렉트박스의 각 option value 값과 텍스트 명을 각각 게시판 ID 와 게시판 명으로 변경되도록 코드 처리를 합니다.

 

4) 스크립트 처리 부분을 이에 맞게 변경해 줍니다.

ex.

<script>document.getElementById("onetable").value = "<?php echo $onetable ?>";</script>

데모 사이트를 예를 들어 얘기하면,

게시판 그룹을 선택하면,

주소표시줄이 대략 이런 형태로 나옵니다.

http://demo.sir.kr/gnuboard5/bbs/search.php?srows=10&gr_id=shop&sfl=wr_subject&stx=%ED%85%8C%EC%8A%A4%ED%8A%B8&sop=and

gr_id=shop 부분이..

shop 그룹 ID 로 그룹 분류 검색 처리가 되어있다는 의미로 해석할 수 있습니다.

여기서 그룹이 아닌, 게시판을 선택해서 검색해 보면

주소표시줄은

http://demo.sir.kr/gnuboard5/bbs/search.php?sfl=wr_subject&stx=%ED%85%8C%EC%8A%A4%ED%8A%B8&sop=and&gr_id=shop&onetable=gallery

이런 형태이고,

onetable=gallery 가 보이는데..

이처럼 그누보드 개발진이 게시판 검색시에는 onetable 이라는 GET 변수로 처리하고 있음을 알 수 있습니다. 이를 활용하는 것입니다.

게시판 검색어는 sca 라는 GET 변수명, 전체검색에서 게시판 ID 는 onetable , 검색어는 stx 등으로 처리되어 있는데.. 이는 개발자가 자신의 취향대로 적당한 이름을 지은 성격입니다.

더 상세히 알아보려면.. 소스코드를 확인해 보면 될 것입니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 32
QA 내용 검색

회원로그인

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