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

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
관리자 상품관리에서 다중검색 문의드립니다.

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 으로 다 넣어주면 되죠

 

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

회원로그인

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