멤버별로 적립되는 포인트를 다르게 하려고 하는데 장바구니로 들어가면 초기화됩니다

멤버별로 적립되는 포인트를 다르게 하려고 하는데 장바구니로 들어가면 초기화됩니다

QA

멤버별로 적립되는 포인트를 다르게 하려고 하는데 장바구니로 들어가면 초기화됩니다

본문

우선 cartupdate.php에서 사용되는 get_item_point 함수를 멤버별로 다르게 적립되도록 수정해놓았습니다

 



// 상품포인트
function get_item_point($it, $io_id='', $trunc=10)
{
    global $g5;
    $it_point = 0;
    if($it['it_point_type'] > 0) {
        $it_price = $it['it_price'];
        if($it['it_point_type'] == 2 && $io_id) {
            $sql = " select io_id, io_price
                        from {$g5['g5_shop_item_option_table']}
                        where it_id = '{$it['it_id']}'
                          and io_id = '$io_id'
                          and io_type = '0'
                          and io_use = '1' ";
            $opt = sql_fetch($sql);
            if($opt['io_id'])
                $it_price += $opt['io_price'];
        }
        $it_point = floor(($it_price * ($it['it_point'] / 100) / $trunc)) * $trunc;
    } else {
                    if($member['mb_level']==2){
                    $it_point = ($it['it_price']*2/1000);
                    }
                    else if($member['mb_level']==3){
                        $it_point = ($it['it_price']*4/1000);
                    }
                    else if($member['mb_level']==4){
                        $it_point = ($it['it_price']*6/1000);
                    }
                    else if($member['mb_level']==5){
                        $it_point = ($it['it_price']*8/1000);
                    }
                    else if($member['mb_level']==6){
                        $it_point = ($it['it_price']*1/100);
                    }
                    else if($member['mb_level']==7){
                        $it_point = ($it['it_price']*1/100);
                    }
                    else if($member['mb_level']>=8){
                        $it_point = ($it['it_price']*2/100);
                    }
        
        //$it_point = $it['it_point'];
    }
    return $it_point;
}

 

이런식으로 관리자페이지에서 포인트가 설정금액이면 전체 가격에서 계산되어 포인트가 설정되도록 수정했습니다 

그런데 상품을 장바구니에 담을때는 g5_shop_cart의 ct_point에 잘 들어가는데 장바구니페이지로 들어가는 순간 초기화가 됩니다 $it['it_point']로 되는거 같은데 

cart.php에는 포인트를 업데이트해주는 update문이 보이지도 않고 ㅜㅜ어딜 수정해줘야할지 모르겠네요 ㅠㅠ 도와주세요 ㅠㅠ 

이 질문에 댓글 쓰기 :

답변 3

shop.lib.php에서 찾아보시면 있었던거 같아요

/shop/"cartupdate.php"

여기도

          // 포인트
            $point = 0;
            if($config['cf_use_point']) {
                if($io_type == 0) {
                    $point = get_item_point($it, $io_id);
                } else {
                    $point = $it['it_supply_point'];
                }

                if($point < 0)
                    $point = 0;
            }

포인트 관련 부분이 있으니 맞게 수정해 보세요.

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

회원로그인

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