관리자 상품관리에서 다중검색 문의드립니다.

관리자 상품관리에서 다중검색 문의드립니다.

QA

관리자 상품관리에서 다중검색 문의드립니다.

본문

관리자 상품관리 상단에 상품명,상품코드등을 이용한 검색창이 있는데요.

단일키워드(또는 텍스트 및 숫자) 하나가 아닌 콤마 구분을 통해 여러개의 제품을 검색하고 싶습니다.

explode 를 이용해서 몇번 시도해봤는데 array에러만 뿜어대네요 ㅎㅎ

(나란 남쟈 ㅠ 기초도 없으면서 그냥 막 댐비는 남쟈 ㄷㄷㄷ)

 

하다하다 지쳐서 도움요청 드립니다. ^^;

 


$where = " and ";
$sql_search = "";
if ($stx != "") {
    if ($sfl != "") {
        $sql_search .= " $where $sfl like '%$stx%' ";
        $where = " and ";
    }
    if ($save_stx != $stx)
        $page = 1;
}
 
if ($sca != "") {
    $sql_search .= " $where (a.ca_id like '$sca%' or a.ca_id2 like '$sca%' or a.ca_id3 like '$sca%') ";
}
 
if ($sfl == "")  $sfl = "it_name";
 
$sql_common = " from {$g5['g5_shop_item_table']} a ,
                     {$g5['g5_shop_category_table']} b
               where (a.ca_id = b.ca_id";
if ($is_admin != 'super')
    $sql_common .= " and b.ca_mb_id = '{$member['mb_id']}'";
$sql_common .= ") ";
$sql_common .= $sql_search;
 
// 테이블의 전체 레코드수만 얻음
$sql = " select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
$total_count = $row['cnt'];
 
$rows = $config['cf_page_rows'];
$total_page  = ceil($total_count / $rows);  // 전체 페이지 계산
if ($page < 1) { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함
 
if (!$sst) {
    $sst  = "it_id";
    $sod = "desc";
}
$sql_order = "order by $sst $sod";
 
 
$sql  = " select *
           $sql_common
           $sql_order
           limit $from_record, $rows ";
$result = sql_query($sql);
 
//$qstr  = $qstr.'&sca='.$sca.'&page='.$page;
$qstr  = $qstr.'&sca='.$sca.'&page='.$page.'&save_stx='.$stx;
 
$listall = '<a href="'.$_SERVER['SCRIPT_NAME'].'" class="ov_listall">전체목록</a>';

 

위 search 부분 어디에선가 수정하는것 같은데 잘 모르겠네요 ㅠㅜ

 

그리고 검색창이 노출되는 폼입니다.


<form name="flist" class="local_sch01 local_sch">
<input type="hidden" name="page" value="<?php echo $page; ?>">
<input type="hidden" name="save_stx" value="<?php echo $stx; ?>">
 
<label for="sca" class="sound_only">분류선택</label>
<select name="sca" id="sca">
    <option value="">전체분류</option>
    <?php
    $sql1 = " select ca_id, ca_name from {$g5['g5_shop_category_table']} order by ca_order, ca_id ";
    $result1 = sql_query($sql1);
    for ($i=0; $row1=sql_fetch_array($result1); $i++) {
        $len = strlen($row1['ca_id']) / 2 - 1;
        $nbsp = '';
        for ($i=0; $i<$len; $i++) $nbsp .= '   ';
        echo '<option value="'.$row1['ca_id'].'" '.get_selected($sca, $row1['ca_id']).'>'.$nbsp.$row1['ca_name'].'</option>'.PHP_EOL;
    }
    ?>
</select>
 
<label for="sfl" class="sound_only">검색대상</label>
<select name="sfl" id="sfl">
    <option value="it_name" <?php echo get_selected($sfl, 'it_name'); ?>>상품명</option>
    <option value="it_sell_email" <?php echo get_selected($sfl, 'it_sell_email'); ?>>쇼핑몰 관리코드</option>
	<option value="it_id" <?php echo get_selected($sfl, 'it_id'); ?>>상품코드</option>
    <option value="it_maker" <?php echo get_selected($sfl, 'it_maker'); ?>>제조사</option>
    <option value="it_origin" <?php echo get_selected($sfl, 'it_origin'); ?>>원산지</option>
</select>
 
<label for="stx" class="sound_only">검색어</label>
<input type="text" name="stx" value="<?php echo $stx; ?>" id="stx" class="frm_input" size="50">
<input type="submit" value="검색" class="btn_submit">
 
</form>

 

$stx를 


$keyword = explode(',', $stx);

로 바꾸고 $keyword를 대신 넣어보았는데도 안되네요.

 

고수님들의 조언 부탁드립니다. ^^;

이 질문에 댓글 쓰기 :

답변 2

    <option value="it_name" <?php echo get_selected($sfl, 'it_name'); ?>>상품명</option>

    <option value="it_sell_email" <?php echo get_selected($sfl, 'it_sell_email'); ?>>쇼핑몰 관리코드 

    <option value="it_id" <?php echo get_selected($sfl, 'it_id'); ?>>상품코드</option>

    <option value="it_maker" <?php echo get_selected($sfl, 'it_maker'); ?>>제조사</option> 

    <option value="it_origin" <?php echo get_selected($sfl, 'it_origin'); ?>>원산지</option> 

이걸 이러게 하지말고 

<input type="checkbox" name="  "> 이런 식으로 변경

근데 구찬 자나요 

그러니까 걍 

커리문에 다넣어요 걍 그러면 

if ($stx != "") {

 

    if ($sfl != "") {

 

        $sql_search .= " $where $sfl like '%$stx%' ";

 

        $where = " and ";

 

    }

 

    if ($save_stx != $stx)

09

        $page = 1;

10

}

필요없는거죠 ㅋ

    $sql_search .= " $where (a.ca_id like '$sca%' or a.ca_id2 like '$sca%' or a.ca_id3 like '$sca%') "; 

 

이분분을 걍 다 만들어주면 되죠 위조건 5개를 

그리고 걍 아시다시피 explode 으로 다 넣어주면 되죠

 

답변을 작성하시기 전에 로그인 해주세요.
전체 32
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT