답변 2개
채택된 답변
+20 포인트
4년 전
1. 검색어를 변수에 담는다
2. member테이블의 1개 Row를 가져온다
3. 검색의 where 에 대한 부분을 or조건으로 만들어야 하는데
foreach로 key 값을 추출하여
컬럼 like 검색어 형태로 where 의 or조건 검색어를 만든다
4. sql문을 확인 / (테스트) / 실행
---------------------
</p>
<p>$search = $_REQUEST['search']; // 검색어</p>
<p> </p>
<p>$sql = "select * from {$g5['member_table']} limit 1";</p>
<p>$row = sql_fetch($sql);</p>
<p>$where = " where 1=1 and ( ";</p>
<p>$chk = 0;</p>
<p>foreach($row as $key => $v) {</p>
<p> if ($chk) $where .= " or ";</p>
<p> $where .= " {$key} like '%{$search}%' ";</p>
<p> $chk++;</p>
<p>}</p>
<p>$where .= " ) ";</p>
<p>$searchsql = "select * from {$g5['member_table']} {$where} ";</p>
<p>$result = sql_query($searchsql);</p>
<p>while ($rows = sql_fetch_array($result)) {</p>
<p> // 검색결과 처리내용</p>
<p>}</p>
<p>
이렇게 하면 되지 않을까 싶습니다만
중간에 쿼리 점검을 해보실필요는 있습니다.
왜냐면.. int값이나 float 형의 컬럼에 like 검색을 해봐야 정상적으로 처리가 안될것이라서요
전체컬럼이라는 전제하에 러프한 로직을 구현해봤습니다.
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인