게시물 검색시에 일치해야만 검색이 되나요?
본문
게시물을 검색하는데 몇몇 새로만든 항목을 검색에 추가하는데
어떤경우는 데이터의 일부만 검색해도 검색이 되는데
어떤경우에는 완전히 일치해야 검색이 되네요?
왜 이런걸까요?
전부다 like로 검색이 되게 할수 없을까요?
답변 1
/lib/common.lib.php 파일에
function get_sql_search 함수에서 검색query를 만드는데요.
아래 부분 참조하세요.
switch ($field[$k]) {
case "mb_id" :
case "wr_name" :
$str .= " $field[$k] = '$s[$i]' ";
break;
case "wr_hit" :
case "wr_good" :
case "wr_nogood" :
$str .= " $field[$k] >= '$s[$i]' ";
break;
// 번호는 해당 검색어에 -1 을 곱함
case "wr_num" :
$str .= "$field[$k] = ".((-1)*$s[$i]);
break;
case "wr_ip" :
case "wr_password" :
$str .= "1=0"; // 항상 거짓
break;
// LIKE 보다 INSTR 속도가 빠름
default :
if (preg_match("/[a-zA-Z]/", $search_str))
$str .= "INSTR(LOWER($field[$k]), LOWER('$search_str'))";
else
$str .= "INSTR($field[$k], '$search_str')";
break;
}
답변을 작성하시기 전에 로그인 해주세요.