회원레벨을 이용한 상품카테고리별 구매제한 > 영카트5 팁자료실

영카트5 팁자료실

회원레벨을 이용한 상품카테고리별 구매제한 정보

회원레벨을 이용한 상품카테고리별 구매제한

본문

쇼핑몰 관리 > 쇼핑몰 설정 > 기타 설정 > 상품구입 권한
위 옵션을을 이용해서 전체상품에 대한 회원별 구매제한이 가능합니다만,

몇몇 쇼핑몰의 경우 [카테고리별 구매제한]이 되어야 해서 구현했습니다.

응용하시면 상품별 구매제한도 가능합니다.

수정해야할 파일은 아래와 같습니다.
1. /adm/shop_admin/categoryform.php
2. /adm/shop_admin/categoryformupdate.php
3. /shop/cartupdate.php

---------------------------------------------------------------------------------------------

[/adm/shop_admin/categoryform.php : 240번째줄 판매가능 아래 <tr>~</tr> 추가]

<tr>
	<th scope="row"><label for="ca_use">판매제한</label></th>
	<td>
		<?php echo help("판매가능한 회원레벨을 제한합니다."); ?>
		<input type="checkbox" name="ca_purchase_limit[]" onclick="$('input.ca_purchase_limit').attr('checked', false)" value="" <?php echo ($ca['ca_purchase_limit'] == "") ? "checked" : ""; ?> value="1" id="ca_purchase_limit_all">
		<label for="ca_purchase_limit_all">제한없음</label>&nbsp;
		<?php for ($i = 1 ; $i <= 9 ; $i++) { ?>
		<input type="checkbox" name="ca_purchase_limit[]" onclick="$('#ca_purchase_limit_all').attr('checked', false)" <?php echo (strpos($ca['ca_purchase_limit'], (STRING)$i) !== false) ? "checked" : ""; ?> value="<?php echo $i ?>" class="ca_purchase_limit" id="ca_purchase_limit<?php echo $i ?>">
		<label for="ca_purchase_limit<?php echo $i ?>"><?php echo $i ?></label>&nbsp;
		<?php } // end of 'for' ?>
	</td>
</tr>


---------------------------------------------------------------------------------------------

[/adm/shop_admin/categoryformupdate.php : 86번째줄 if ($w == "") 위쪽에 아래 추가]


// 구매회원 레벨제한
// ALTER 쿼리는 한번 실행했으면 삭제가능
sql_query("ALTER TABLE `g5_shop_category` ADD `ca_purchase_limit` VARCHAR(64) NOT NULL COMMENT '구매회원 레벨제한'  AFTER `ca_adult_use`", 0);
$sql_common .= ",  ca_purchase_limit = '".implode(",", $ca_purchase_limit)."'";

if ($w == "")
{
	if (!trim($ca_id))
		alert("분류 코드가 없으므로 분류를 추가하실 수 없습니다.");


---------------------------------------------------------------------------------------------

[/shop/cartupdate.php : 100번째줄 근방 // 최소, 최대 수량 체크 위쪽에 아래 추가]


// 구매회원 레벨제한
$sql = " select ca_purchase_limit from {$g5['g5_shop_category_table']} where ca_id = '$it[ca_id]' ";
$ca = sql_fetch($sql);

// 레벨제한값이 있을 경우 체크
if ($ca['ca_purchase_limit'] != "") {
	// 레벨제한에 로그인된 회원의 레벨이 없을 경우
	if (strpos($ca['ca_purchase_limit'], (STRING)$member['mb_level']) === false) {
		alert("해당상품은 특정회원만 구매가 가능합니다.");
	}
}

// 최소, 최대 수량 체크
if($it['it_buy_min_qty'] || $it['it_buy_max_qty']) {
	$sum_qty = 0;
	for($k=0; $k<$opt_count; $k++) {
추천
1

댓글 9개

1054 : Unknown column 'it_sc_type' in 'field list'

error file : /shop/cartupdate.php

이런 메세지가 뜨네요...ㅠㅠ  필드 추가를 해야하나요?
소스를 보시면 아시겠지만, it_sc_type 라는 필드를 사용하지는 않습니다.
다른쪽으로 확인을 해보셔야 할 것 같네요
전체 392
영카트5 팁자료실 내용 검색

회원로그인

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