추가로 만든 필드(wr_6)을 검색될 수 있게 하는 방법 문의

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
추가로 만든 필드(wr_6)을 검색될 수 있게 하는 방법 문의

QA

추가로 만든 필드(wr_6)을 검색될 수 있게 하는 방법 문의

본문

고수님들의 조언을 구합니다.

 

wr_6을 추가 필드로 사용하면서 데이터를 Text형태로 입력하고 있습니다.

운영을 하려고 하다 보니 wr_6의 데이터가 검색이 되었으면 해서

메인의 검색 부분과 skin으로 설정되는 search 부분에 ||wr_6을 추가해줬는데

검색이 안되네요. ㅠ_ㅠ

 

제가 아는 방법이 아닌 다른 방법이 있는 건가요?

아니면 데이터를 입력받는 방법을 바꿔야 하는건가요?

 

많은 지도 편달 부탁드립니다.

이 질문에 댓글 쓰기 :

답변 6

'||wr_6' 추가가 아닌 'wr_6' 추가입니다. 

 

※ https://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=43 
에서 '2. 게시판 목록 하단에 있는 검색에 추가하는 방법'

안녕하세요.

아래의 내용을 참고해 보세요~

 

https://sir.kr/qa/446931

 

 

어떻게 해보았는데 안되는 것인지 해본 코드를 알려주면 답변이 쉬워지는데... .

sfl에 wr_6 추가하면 됩니다

 

안되면  수정한 검색폼과 스킨 상단에 echo $sql;

넣어서 나온 쿼리문 올려보세요

 

마르스컴퍼니님이 알려주신대로 링크 내용 보고 따라해봤는데요.

제가 뭔가 잘못 추가했나봐요.

 

skin/search/basic/search.skin.php

<select name="sfl" id="sfl">
        <option value="wr_subject||wr_content"<?php echo get_selected($sfl, "wr_subject||wr_6") ?>>제목+태그</option>
        <option value="wr_subject"<?php echo get_selected($sfl, "wr_subject") ?>>제목</option>
        <option value="wr_5"<?php echo get_selected($_GET['sfl'], "wr_5") ?>>출연진</option>
        <option value="wr_6"<?php echo get_selected($_GET['sfl'], "wr_6") ?>>태그</option>
        <option value="mb_id"<?php echo get_selected($sfl, "mb_id") ?>>회원아이디</option>
        <option value="wr_name"<?php echo get_selected($sfl, "wr_name") ?>>이름</option>
    </select>

 

head.php

<input type="hidden" name="sfl" value="wr_subject||wr_content||wr_6">

 

bbs/search.php

case 'wr_name' ; 밑에 추가했습니다.

for ($k=0; $k<count($field); $k++) {
                        $str .= $op2;
                        switch ($field[$k]) {
                            case 'mb_id' :
                            case 'wr_name' :
                                $str .= "$field[$k] = '$s[$i]'";
                                break;
                            case 'wr_subject' :
                            case 'wr_content' :
                            case 'wr_5' :
                            case 'wr_6' :
                                if (preg_match("/[a-zA-Z]/", $search_str))
                                    $str .= "INSTR(LOWER({$field[$k]}), LOWER('{$search_str}'))";
                                else
                                    $str .= "INSTR({$field[$k]}, '{$search_str}')";
                                break;
                    $str .= "$field[$k] = '$s[$i]'";
                    break;

 

이후 case문은 모두 유지했구요.

제대로 잘 안되는게 제가 뭔가 잘못한듯 한데.. 봐주셨음 합니다.

여분필드는 아예 검색을 못하네요..ㅠ_ㅠ

<option value="wr_subject||wr_content"<?php echo get_selected($sfl, "wr_subject||wr_6") ?>>제목+태그</option>

<option value="wr_subject||wr_6"<?php echo get_selected($sfl, "wr_subject||wr_6") ?>>제목+태그</option>

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

회원로그인

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