리스트에서 멀티 검색할때...
본문
리스트에서 검색할때
체크박스를 만들어서 "wr_10"번에 값이 있는것만 검색할려고 하면
어떤식으로 해야 하나요?
<div>
<label><input type="checkbox" name="wr_10[]" value=""> 통장 </label>
<label><input type="checkbox" name="wr_11[]" value=""> 현금 </label>
<label><input type="checkbox" name="wr_12[]" value=""> 카드 </label>
</div>
체크박스를 만들어서 특정값이 아니라 wr_10이나 wr_11번에 값이 있는것만 검색하고 싶습니다.
!-->답변 2
검색창 부분에 아래 소스를 추가하시고..
<div>
<label><input type="checkbox" name="wr_10" value="1"> 통장 </label>
<label><input type="checkbox" name="wr_11" value="1"> 현금 </label>
<label><input type="checkbox" name="wr_12" value="1"> 카드 </label>
</div>
/bbs/list.php 파일을 아래와 같이 수정
if ($sca || $stx || $stx === '0' || $wr_10 || $wr_11 || $wr_12) { //검색이면
$is_search_bbs = true; //검색구분변수 true 지정
$sql_search = get_sql_search($sca, $sfl, $stx, $sop);
// 가장 작은 번호를 얻어서 변수에 저장 (하단의 페이징에서 사용)
$sql = " select MIN(wr_num) as min_wr_num from {$write_table} ";
$row = sql_fetch($sql);
$min_spt = (int)$row['min_wr_num'];
if (!$spt) $spt = $min_spt;
$sql_search .= " and (wr_num between {$spt} and ({$spt} + {$config['cf_search_part']})) ";
if($wr_10) {
$sql_search .= " and wr_10 != '' ";
}
if($wr_11) {
$sql_search .= " and wr_11 != '' ";
}
if($wr_12) {
$sql_search .= " and wr_12 != '' ";
}
// 원글만 얻는다. (코멘트의 내용도 검색하기 위함)
// 라엘님 제안 코드로 대체 http://sir.kr/g5_bug/2922
$sql = " SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM {$write_table} WHERE {$sql_search} ";
$row = sql_fetch($sql);
$total_count = $row['cnt'];
} else {
$sql_search = "";
$total_count = $board['bo_count_write'];
}
if($wr_10 || $wr_11 || $wr_12 ) {
$sql_search .= " and ( "
$or_op='';
if($wr_10) {
$sql_search .= " wr_10 != '' ";
$or_op=' or ';
}
if($wr_11) {
$sql_search .= " $or_op wr_11 != '' ";
$or_op=' or ';
}
if($wr_12) {
$sql_search .= " $or_op wr_12 != '' ";
}
$sql_search .= ' ) ';
}
추천하는 방법은 아닙니다.
답변을 작성하시기 전에 로그인 해주세요.