영카트 사용자정의 쿼리를 넣을때요

영카트 사용자정의 쿼리를 넣을때요

QA

영카트 사용자정의 쿼리를 넣을때요

본문

        $list = new item_list($skin_file, $ca['ca_list_mod'], $ca['ca_list_row'], $ca['ca_img_width'], $ca['ca_img_height']);

        $list->set_category($ca['ca_id'], 1);

        $list->set_category($ca['ca_id'], 2);

        $list->set_category($ca['ca_id'], 3);

        $list->set_is_page(true);

$list->set_query("SELECT * FROM `g5_shop_item` WHERE it_use = '1' AND ( ca_id2 LIKE '1010%' ) ORDER BY it_order, it_id DESC");

 

궁금한게 쿼리로 하면 끝부분에 limit 10,10 이런 부분 설정안해도 

페이징은 기존 영카트  페이징처리로 되는지요?

 

 

 

이 질문에 댓글 쓰기 :

답변 1

소스(shop.lib.php)를 보시면 아시겠지만

        if ($this->query) {

            $sql = $this->query;
            $result = sql_query($sql);
            $this->total_count = @mysql_num_rows($result);

        } else {

페이징 처리를 위한 limit처리는 안하고 있는걸로 보입니다.

 

그렇지만 어짜피 클래스내에 limit변수와 함수가 존재하고 스킨자체도 페이징처리도 가능하게 되어있는걸로 보이므로... 

$sql = $this->query;
$result = sql_query($sql); 

$sql_limit = " limit " . $this->from_record . " , " . ($this->list_mod * $this->list_row);

$sql = $sql.$sql_limit;

​$result = sql_query($sql);

$this->total_count = @mysql_num_rows($result);

위와 같이 limit 설정만 해주면 가능할 것으로 보입니다.

참고소스로만 활용하시고 테스트는 안해봐서 직접 해셔야 할것 같습니다. 

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

회원로그인

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