게시판 리스트에서 검색.. > 그누3질답

그누3질답

게시판 리스트에서 검색.. 정보

그누보드 게시판 리스트에서 검색..

본문

게시판리스트에 보면 검색하는 부분에서
보통 보면
제목
제목+이름
이름
... 이렇게 되어있잖아요..
여기서 전체는 업는거 같은데요..
전체 검색을 하려면 어떻게 수정해줘야하나요..
  • 복사

댓글 전체

그렇죠..위에분 말씀대로 기존검색 펑션에서 전체항목을 추가하고 싶다면 게시판의 모든 필드항목을 case 옵션으로 추가해 주면 됩니다..근데 like 보다는 INSTR 이 좀 빠르던데..(게시물이 많을경우는 좀 차이가 나더군요..미세하긴 하지만...^^;)
gnuboard.lib.php 에서
function get_sql_search($field, $stext, $soperator=0)
{
    $op = "";
    $str = " and ( ";
    // 검색어를 구분자로 나눈다. 여기서는 공백
    $s = explode(" ", $stext);
    for ($i=0; $i<count($s); $i++) {
        $str .= " $op ";
        switch ($field) {
            case "wr_subject|wr_content" :
                $str .= " (wr_subject like '%$s[$i]%' or wr_content like '%$s[$i]%') ";
                break;
            case "ca_id" :
                $str .= " ($field = '$s[$i]') ";
                break;
            case "wr_hit" :
            case "wr_good" :
            case "wr_nogood" :
                $str .= " ($field >= '$s[$i]') ";
                break;
            case "wr_num" :
                $str .= " ($field = ".((-1)*$s[$i]).") ";
                break;
// 추가부분

            case "allseach" :
                $str .= " (wr_subject like '%$s[$i]%' or wr_content like '%$s[$i]%' or mb_name like '%$s[$i]%' ) ";
                break;
// 추가부분

            default :
                $str .= " ($field like '%$s[$i]%') ";
                break;
        }
        $op = ($soperator) ? " and " : " or ";
    }
    $str .= " ) ";

    return $str;
}

위에서처럼 추가하고싶은걸 필드를 추가하고
스킨의 gblist.skin.php에서

    <form name=fsearch method=get action='<?="./"?>'>
    <input type=hidden name=doc value='<?=$doc?>'>
    <input type=hidden name=bo_table value='<?=$bo_table?>'>
    <td width=50% align=right valign=bottom>
        <select name=sselect class=select>
            <option value='wr_subject'>제목</option>
            <option value='wr_content'>내용</option>
            <option value='wr_subject|wr_content'>제목+내용</option>
            <option value='allsearch'>전체</option>
            <option value='wr_name'>이름</option>
            <option value='wr_num'>번호</option>
            <option value='wr_datetime'>날짜</option>
            <option value='wr_hit'>읽음</option>
            <? if ($is_good) { ?><option value='wr_good'>추천</option><? } ?>
            <? if ($is_nogood) { ?><option value='wr_nogood'>비추천</option><? } ?>
        </select>
        <input type=text name=stext size=10 required itemname='검색어' value='<?=$stext?>' >
        <select name=soperator class=select>
            <option value='1'>AND</option>
            <option value='0'>OR</option>
        </select>
        <input type=image src='<?="$board_skin/search.gif"?>' border=0 alt='검색' align=absmiddle>
    </td>
    </form>
이런씩으로 처리하시면 되지 싶네요!
© SIRSOFT
현재 페이지 제일 처음으로