채택완료

상품 다중 검색 질문

2016-08-01 (월) 16:01:04 4,039
Copy
<input type="checkbox" name="it_1[]" value=""> 전체     <input type="checkbox" name="it_1[]" value="1" > 1     <input type="checkbox" name="it_1[]" value="2" > 2
Copy
if ($it_1)      $where[] = " it_1 = '$it_1' ";

it_1 값이 배열로 넘어 오기 때문에, 배열로 값을 읽어서 처리하시면 체크한 모든 값을 적용할 수 있습니다. 

배열로 크기를 체크해서 for문이나 forsearch문으로 처리하라고 하는데 어떻게 해야하나요? ㅠㅠ 

|

답변 4개 / 댓글 10개

채택된 답변
+20 포인트

a.it_1 로 바꿔보세요 

슈와이 님 소스 입니다. ㅠ

foreach ($it_1 as $k => $v) {

if ($v == '') break;

$str[] = " a.it_1 = '" . $v . "'";

}

if (isset($str)) $where[] = implode(' or ', $str);

답변에 대한 댓글 4개

미치겠네 안돼요 ㅠㅠ 제가 위에 php 파일 경로 드렸는데 혹시 보실 수 있나요? 이게 제가 질문을 잘못드린건지 ㅠㅠ
오오오오 됐어요~!! 근데 상품이 2개만 나와야하는데 값이 2인 상품이 계속 중복되서 엄청 많이 나와요 ㅠㅠ
http://sir.kr/qa/135301?page=0&posting=ok&sst=wr_num 에 새 질문 올려드렸어요 ㅠㅠ
2016-08-01 (월) 17:11:16

3fd0243be2ffd52829a7aad4b4433cd4_1470039072_967.png
 

답변에 대한 댓글 1개

104~105 번 줄 삭제하세요

foreach ($it_1 as $k => $v) {

if ($v == '') break;

$str[] = " it_1 = '" . $v . "'";

}

if (isset($str)) $where[] = implode(' or ', $str);

답변에 대한 댓글 2개

아이고 미치겠네 ㅠㅠ 이걸 넣어도 안되네요 제가 잘못드린건가요 질문을? ㅠㅠ
너무너무너무너무 감사합니다 ㅠㅠ

제대로된 코드인지는 모르겠으나 ㅠ...

아래와 같이 하면 되지 않을까 합니다.

Copy
if($it_1){  $it_1_sql = " ( ";  for($j=0;$j<sizeof($it_1);$j++){    if($j!=0){ $it_1_sql .= " or "; }    $it_1_sql .= " it_1 = '".$it_1[$j]."' ";  $it_1_sql .= " ) ";  }  $where[] = $it_1_sql;}

답변에 대한 댓글 3개

답변 주셔서 너무너무 감사합니다 ㅠㅠ

근데 지금 넣어봤는데 안되네요 ㅠㅠ
뭐가 잘못된걸까요 ㅠㅠ 너무 답답하네요 몇일째 ㅠㅠ

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