상품 일괄 할인 적용하기 (2022-02-09 10:05 수정) > 영카트5 팁자료실

영카트5 팁자료실

상품 일괄 할인 적용하기 (2022-02-09 10:05 수정) 정보

상품 일괄 할인 적용하기 (2022-02-09 10:05 수정)

본문

[주] 이후 강좌수정내용의 업데이트가 안될수 있습니다.
본 강좌의 최신업데이트는 https://www.happyjung.com/lecture/3056 에서 확인가능합니다.
가급적 동일한 내용을 유지하려고 노력하지만, 우선 작업은 위 링크입니다.

 

 

상품 일괄 할인율을 적용하는 방법입니다
지정된 % 가 일괄 할인해서 구매가 이뤄지도록 합니다


디비의 g5_shop_default 에 de_sell_count 필드를 추가
adm
└ admin.menu400.shop_1of2.php
adm / shop_admin
├ itemsellform.php
└ itemsellformupdate.php
shop
└ cartupdate.php
skin / shop / basic
└ item.form.skin.php


1. adm / admin.menu400.shop_1of2.php
아래 내용 추가
array('400310', '일괄할인', G5_ADMIN_URL.'/shop_admin/itemsellform.php', 'itemsellform'),


2. adm / shop_admin / itemsellform.php 생성
<?php
$sub_menu = '400310';
include_once('./_common.php');

auth_check($auth[$sub_menu], "w");

$html_title = "일괄할인";

$g5['title'] = $html_title;
include_once (G5_ADMIN_PATH.'/admin.head.php');

// 재입고알림 설정 필드 추가
if(!sql_query(" select de_sell_count from {$g5['g5_shop_default_table']} limit 1 ", false)) {
sql_query(" ALTER TABLE `{$g5['g5_shop_default_table']}`
ADD `de_sell_count` tinyint(4) NOT NULL DEFAULT '0' COMMENT '일괄할인' ", true);
}
?>

 

일괄할인


<?php echo $pg_anchor; ?>

 

 

제품 가격을 비율로 일괄 할인 판매합니다

 

 

 




 
일괄할인
일괄할인
<?php echo help("할인율이 0 이상일때 할인율이 작동합니다"); ?>
%

 

 

 

 

 

 

 

 

 


<?php
include_once (G5_ADMIN_PATH.'/admin.tail.php');


3. adm / shop_admin / itemsellformupdate.php 생성
<?php
$sub_menu = '400310';
include_once('./_common.php');

check_demo();

auth_check($auth[$sub_menu], "w");

check_admin_token();

$sql = " update {$g5['g5_shop_default_table']}
set de_sell_count = '{$_POST['de_sell_count']}'
";
sql_query($sql);

goto_url("./itemsellform.php");


4. shop / cartupdate.php
$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' )";

를 아래와 같이 변경

$it_price = $it['it_price'];
//if ($default['de_sell_count']>0 && ($member['mb_id']=='테스트아이디')) { // 테스트할때 사용
if ($default['de_sell_count']>0) { // 일괄할인
$it_price = $it_price - ceil($it_price * $default['de_sell_count'] / 100);
}
$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_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}' )";



5. skin / shop / basic / item.form.skin.php
판매가격

<?php echo display_price(get_price($it)); ?>



를 아래와 같이 변경

판매가격

<?php // 일괄할인
//if ($default['de_sell_count']>0 && ($member['mb_id']=='테스트아이디')) { // 테스트할때 사용
if ($default['de_sell_count']>0) {
?>

<?php echo display_price(get_price($it)); ?> <?php echo $default['de_sell_count']; ?>% 할인
<?php echo display_price(get_price($it) - get_price($it) * $default['de_sell_count'] / 100); ?>

<?php
} else {
?>
<?php echo display_price(get_price($it)); ?>

<?php
}
?>

 

 

 

추천
5

댓글 9개

소스에서 - 를 + 로 변경하면 일괄인상도 되기는 하죠
디비에서 가격을 변경하는 것이 아니라서, 인상용으로 사용하기에는 좀 애매할듯 싶네요
그대로 적용한 것 같은데 주문하려고 하면 '장바구니 금액에 변동사항이 있습니다. 장바구니를 다시 확인해 주세요.' alert 창이 뜨네요 ㅜ
답변 감사합니다. 본문 소스 참고해서 어찌어찌 해결했었던 기억이 납니다. 좋은 팁 공유해주셔서 감사드립니다.
전체 392
영카트5 팁자료실 내용 검색

회원로그인

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