검색에 WR_email 을 추가 하고 싶습니다
본문
<select name="sfl">
<option value="wr_email">이메일</option>
</select>
이렇게 값을 추가했는데
검색은 되는데 *** 개인정보보호를 위한 이메일주소 노출방지 *** 를 정확하게 입력했을경우에만 나오는 값을 만들고 싶습니다
방법이 없는건지
아이디 같은경우는 되던데 왜 이메일은 안되는지 모르곘네요
Stx값이 like %a%이런 구문도 없던데........
잘모르곘습니다 도와주시면 감사합니다
답변 2
그누보드4 기준으로
/lib/common.php 파일을 보시면
function get_sql_search($search_ca_name, $search_field, $search_text, $search_operator='and')
함수가 있습니다.
해당 함수에 중간에 switch 문이 있는데
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;
}
위와 같이 되어있는 부분에
case "mb_id" :
case "wr_name" :
여기 바로 밑에
case "wr_email" :
을 추가하시면 원하시는 형태가 됩니다. 다만 대소문자도 구분하게 됩니다.
case 에 걸리지 않는 부분은 맨 아래 default 로 동작합니다.
감사합니다~
답변을 작성하시기 전에 로그인 해주세요.