레벨별 가격 다르게 설정하기~(장바구니까지 테스트) > 영카트5 팁자료실

영카트5 팁자료실

레벨별 가격 다르게 설정하기~(장바구니까지 테스트) 정보

레벨별 가격 다르게 설정하기~(장바구니까지 테스트)

본문

다른분들의 소스를 사용해보았는데 장바구니로 가는부분에 문제가 있어서 제가 사용한 방법으로 올려봅니다.
-> 일반회원(레벨2)과 레벨3회원(사업자) 가격을 다르게 지정해야하는 프로젝트입니다.
-> 영카트 여분필드 it_1번을 사용하였습니다.(알맞게 사용하세요.)

============================================

1. /adm/shop_admin/itemform.php 의 '판매가격' 밑에 다음과 같이 추가(알맞게 수정바람)

        <tr>
            <th scope="row"><label for="it_1">사업자 판매가격</label></th>
            <td colspan="2">
                <input type="text" name="it_1" value="<?php echo $it['it_1']; ?>" id="it_1" class="frm_input" size="8"> 원
            </td>
        </tr>
=============================================

2. /lib/shop.lib.php

function get_price($it)
{
    global $member;

    if ($it['it_tel_inq']) return '전화문의';

    $price = $it['it_price'];

if ($member['mb_level'] == 3 && $it['it_1'] > 0) {
        $price = $it['it_1'];
    }

    return (int)$price;
}

-> 레벨3에만 적용하기위하여..
-> 여기까지하면 리스트에 출력은 잘된다. 하지만 장바구니 및 바로구매시 원래가격이 나옴..

=============================================

3. /shop/cartupdate.php

322번재줄쯤.. insert 데이터값이 들어가는 $sql 변수 바로위에 위에 구문 작성

if ($member['mb_level'] == 3 && $it['it_1'] > 0) {
    $it['it_price'] = $it['it_1'];
}


(밑에는 원래 있던놈..)
 $sql .= $comma."( '$tmp_cart_id', '{$member['mb_id']}', '{$it['it_id']}', '".addslashes($it['it_name'])."', '{$it['it_sc_type']}', '{$it['it_sc_method']}', '{$it['it_sc_price']}', '{$it['it_sc_minimum']}', '{$it['it_sc_qty']}', '쇼핑', '{$it['it_price']}', '$point', '0', '0', '$io_value', '$ct_qty', '{$it['it_notax']}', '$io_id', '$io_type', '$io_price', '".G5_TIME_YMDHIS."', '$REMOTE_ADDR', '$ct_send_cost', '$sw_direct', '$ct_select', '$ct_select_time' )";
            $comma = ' , ';
            $ct_count++;

=============================================
(8월 21일 추가내용)
- 누락된 부분을 착한용이님께서 알려주셔서 추가합니다.


/adm/shop_admin/itemform.php 의 하단부분에 여분필드를 제거 혹은 it_1을 사용하지 않도록 처리하셔야 됩니다.


=============================================

일단 테스트해봤는데 잘된다..무슨문제가 발생될지는 모름.
추천
4

댓글 3개

좋은팁 감사합니다.
그런데 저는 상품수정하려고 하는데 업데이트가 되지않아서 문제를 찾아보니 상품상세페이지 하단의 여분필드에 값으로 업데이트를 해버려서 수정이 되지 않았습니다.

혹시라도 저처럼 안되시는 분들은
itemform.php 파일 하단 '여분필드'를 출력해주시는부분에 (1640번째줄부분)

<?php for ($i=1; $i<=10; $i++) { ?>

$i 값을 하나 늘려서($i=2) 사용하시면 됩니다.
전체 391
영카트5 팁자료실 내용 검색

회원로그인

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