채택완료

모두 수고많으십니다. 검색 질문 좀 드리겠습니다.

2014-03-24 (월) 00:01:44 8,536
wr_10에 1,2,3,4,5중에 임의로 각각 저장되어 있습니다.

그런데 2,3,5만 검색할 수 있을지요..있다면 가르쳐주시면 감사하겠습니다.

<option value='wr_10'>숫자</option> 이렇게 하고 각각의 숫자 하나만 검색하면 되는데
검색칸에 2 3 5라고 띄워서 함께 치고 검색하면 2,3,5가 있는 리스트가 검색이 안되서요... 
|

답변 3개 / 댓글 3개

채택된 답변
+20 포인트
Copy
<?php$args = "2 3 5";$str = "";$arrayArgs = explode(" ", $args);foreach($arrayArgs as &$value) {        $str .= "'".$value . "',";}echo "WHERE wr_10 IN (".substr($str, 0, -1).")";?>
 

답변에 대한 댓글 1개

2016-10-31 (월) 13:21:26
감사합니다~ 감사합니다.

쿼리의 조회조건을 설정하는 부분이

Copy
where wr_10 = '2 3 5'
처럼 처리되어서 발생하는 문제입니다
쿼리를
Copy
where wr_10 in ('2', '3', '5')
처럼 변경해야합니다.

http://php.net/manual/kr/function.explode.php
explode를 이용하여 공백을 기준으로 잘라서 배열에 담은후

http://php.net/manual/kr/control-structures.foreach.php
foreach를 이용하여 입력된 숫자만큼 , 를 붙여서 조건을 만들면 될것 같습니다

참고로 조건이 하나일때
Copy
where wr_10 in ('2')
도 정상처리됩니다.
 

답변에 대한 댓글 1개

2016-10-27 (목) 17:30:42
루트님이시군요,,안녕하세요,인사드립니다~
해볼게요~

답변에 대한 댓글 1개

2016-10-27 (목) 17:29:58
감사합니다~ 해볼게요

답변을 작성하려면 로그인이 필요합니다.