옵션부분 처리방법 해결 좀 부탁합니다.
본문
이렇게 해야하는 상황이 와서요...
소스를 뒤져보니 skin\apms\item\shop\item.skin.php 이곳에서 처리하는것 같고...
254번 줄 사이에 값을 넣으면 되는것 같은데... 계산식은 전혀 몰라서 어떻게 해줘야 하는지 알려주셨으면 합니다.
파도파도 어렵다 느껴지기도 하네여.. 공부는 되는데.....ㅠㅠ
답변 3
소스가 보아하니 자바스크립트로 된듯 한데 소스를 보여주시던지 하셔야 코치가 가능할듯 보여집니다.
옵션관련 전체 소스코드 입니다. 잘 부탁드립니다.
<?php } ?>
<?php if($it['it_buy_min_qty']) { ?>
<tr><th>최소구매수량</th><td><?php echo number_format($it['it_buy_min_qty']); ?> 개</td></tr>
<?php } ?>
<?php if($it['it_buy_max_qty']) { ?>
<tr><th>최대구매수량</th><td><?php echo number_format($it['it_buy_max_qty']); ?> 개</td></tr>
<?php } ?>
<?php
$ct_send_cost_label = '배송비결제';
if($it['it_sc_type'] == 1)
$sc_method = '무료배송';
else {
if($it['it_sc_method'] == 1)
$sc_method = '수령후 지불';
else if($it['it_sc_method'] == 2) {
$ct_send_cost_label = '<label for="ct_send_cost">배송비결제</label>';
$sc_method = '<select name="ct_send_cost" id="ct_send_cost" class="form-control input-sm">
<option value="0">주문시 결제</option>
<option value="1">수령후 지불</option>
</select>';
}
else
$sc_method = '주문시 결제';
}
?>
<tr>
<th><?php echo $ct_send_cost_label; ?></th><td><?php echo $sc_method; ?></td>
</tr>
</tbody>
</table>
<div id="item_option">
<?php if($option_item) { ?>
<p> <b><i class="fa fa-check-square-o fa-lg"></i> 선택옵션</b></p>
<table class="div-table table">
<col width="120">
<tbody>
<?php echo $option_item; // 선택옵션 ?>
</tbody>
</table>
<?php } ?>
<?php if($supply_item) { ?>
<p> <b><i class="fa fa-check-square-o fa-lg"></i> 추가옵션</b></p>
<table class="div-table table">
<col width="120">
<tbody>
<?php echo $supply_item; // 추가옵션 ?>
</tbody>
</table>
<?php } ?>
<?php if ($is_orderable) { ?>
<div id="it_sel_option">
<?php
if(!$option_item) {
if(!$it['it_buy_min_qty'])
$it['it_buy_min_qty'] = 1;
?>
<ul id="it_opt_added" class="list-group">
<li class="it_opt_list list-group-item">
<input type="hidden" name="io_type[<?php echo $it_id; ?>][]" value="0">
<input type="hidden" name="io_id[<?php echo $it_id; ?>][]" value="">
<input type="hidden" name="io_value[<?php echo $it_id; ?>][]" value="<?php echo $it['it_name']; ?>">
<input type="hidden" class="io_price" value="0">
<input type="hidden" class="io_stock" value="<?php echo $it['it_stock_qty']; ?>">
<div class="row">
<div class="col-sm-7">
<label>
<span class="it_opt_subj"><?php echo $it['it_name']; ?></span><br>
<span class="it_opt_prc"><span class="sound_only">(+0원)</span></span>
</label>
</div>
<div class="col-sm-5">
<div class="input-group">
<label for="ct_qty_<?php echo $i; ?>" class="sound_only">수량</label>
<input type="text" name="ct_qty[<?php echo $it_id; ?>][]" value="<?php echo $it['it_buy_min_qty']; ?>" id="ct_qty_<?php echo $i; ?>" class="form-control input-sm" size="5">
<div class="input-group-btn">
<button type="button" class="it_qty_plus btn btn-lightgray btn-sm"><i class="fa fa-plus-circle fa-lg"></i><span class="sound_only">증가</span></button>
<button type="button" class="it_qty_minus btn btn-lightgray btn-sm"><i class="fa fa-minus-circle fa-lg"></i><span class="sound_only">감소</span></button>
</div>
</div>
</div>
</div>
<?php if($it['pt_msg1']) { ?>
<div style="margin-top:10px;">
<input type="text" name="pt_msg1[<?php echo $it_id; ?>][]" class="form-control input-sm" placeholder="<?php echo $it['pt_msg1'];?>">
</div>
<?php } ?>
<?php if($it['pt_msg2']) { ?>
<div style="margin-top:10px;">
<input type="text" name="pt_msg2[<?php echo $it_id; ?>][]" class="form-control input-sm" placeholder="<?php echo $it['pt_msg2'];?>">
</div>
<?php } ?>
<?php if($it['pt_msg3']) { ?>
<div style="margin-top:10px;">
<input type="text" name="pt_msg3[<?php echo $it_id; ?>][]" class="form-control input-sm" placeholder="<?php echo $it['pt_msg3'];?>">
</div>
<?php } ?>
<?php echo get_price($it); ?>
</li>
</ul>
<script>
$(function() {
price_calculate();
});
</script>
<?php } ?>
</div>
<!-- 총 구매액 -->
<h4 style="text-align:center; margin-bottom:15px;">
<font color="red"><b>총 금액 : <span id="it_tot_price">0원</b></font></span>
<!--<br><font size="3pt" color="blue">(부가세 미포함 가격입니다.)</font>-->
</h4>
<?php } ?>
</div>
<?php if($is_soldout) { ?>
<p id="sit_ov_soldout">재고가 부족하여 구매할 수 없습니다.</p>
<?php } ?>
<?php if ($is_orderable) { ?>
<div style="text-align:center; padding:12px 0;">
<ul class="item-buy-btn">
<li><input type="submit" onclick="document.pressed=this.value;" value="바로구매" class="btn btn-<?php echo $btn2;?> btn-block"></li>
<li><input type="submit" onclick="document.pressed=this.value;" value="장바구니" class="btn btn-<?php echo $btn1;?> btn-block"></li>
<li><a href="#" class="btn btn-<?php echo $btn1;?> btn-block" onclick="apms_wishlist('<?php echo $it['it_id']; ?>'); return false;">위시리스트</a></li>
<li><a href="#" class="btn btn-<?php echo $btn1;?> btn-block" onclick="apms_recommend('<?php echo $it['it_id']; ?>', '<?php echo $ca_id; ?>'); return false;">추천하기</a></li>
</ul>
</div>
<?php if ($naverpay_button_js) { ?>
<div style="margin-bottom:15px;"><?php echo $naverpay_request_js.$naverpay_button_js; ?></div>
<?php } ?>
<?php } ?>
<?php if(!$is_orderable && $it['it_soldout'] && $it['it_stock_sms']) { ?>
<div style="text-align:center; padding:12px 0;">
<button type="button" onclick="popup_stocksms('<?php echo $it['it_id']; ?>','<?php echo $ca_id; ?>');" class="btn btn-primary">재입고알림(SMS)</button>
</div>
<?php } ?>
</form>
<script>
// BS3
$(function() {
$("select.it_option").addClass("form-control input-sm");
$("select.it_supply").addClass("form-control input-sm");
});
// 재입고SMS 알림
function popup_stocksms(it_id, ca_id) {
url = "./itemstocksms.php?it_id=" + it_id + "&ca_id=" + ca_id;
opt = "scrollbars=yes,width=616,height=420,top=10,left=10";
popup_window(url, "itemstocksms", opt);
}
// 바로구매, 장바구니 폼 전송
function fitem_submit(f) {
if (document.pressed == "장바구니") {
f.sw_direct.value = 0;
} else { // 바로구매
f.sw_direct.value = 1;
}
// 판매가격이 0 보다 작다면
if (document.getElementById("it_price").value < 0) {
alert("전화로 문의해 주시면 감사하겠습니다.");
return false;
}
if($(".it_opt_list").size() < 1) {
alert("선택옵션을 선택해 주십시오.");
return false;
}
var val, io_type, result = true;
var sum_qty = 0;
var min_qty = parseInt(<?php echo $it['it_buy_min_qty']; ?>);
var max_qty = parseInt(<?php echo $it['it_buy_max_qty']; ?>);
var $el_type = $("input[name^=io_type]");
$("input[name^=ct_qty]").each(function(index) {
val = $(this).val();
if(val.length < 1) {
alert("수량을 입력해 주십시오.");
result = false;
return false;
}
if(val.replace(/[0-9]/g, "").length > 0) {
alert("수량은 숫자로 입력해 주십시오.");
result = false;
return false;
}
if(parseInt(val.replace(/[^0-9]/g, "")) < 1) {
alert("수량은 1이상 입력해 주십시오.");
result = false;
return false;
}
io_type = $el_type.eq(index).val();
if(io_type == "0")
sum_qty += parseInt(val);
});
if(!result) {
return false;
}
if(min_qty > 0 && sum_qty < min_qty) {
alert("선택옵션 개수 총합 "+number_format(String(min_qty))+"개 이상 주문해 주십시오.");
return false;
}
if(max_qty > 0 && sum_qty > max_qty) {
alert("선택옵션 개수 총합 "+number_format(String(max_qty))+"개 이하로 주문해 주십시오.");
return false;
}
if (document.pressed == "장바구니") {
$.post("./itemcart.php", $(f).serialize(), function(error) {
if(error != "OK") {
alert(error.replace(/\\n/g, "\n"));
return false;
} else {
if(confirm("장바구니에 담겼습니다.\n\n바로 확인하시겠습니까?")) {
document.location.href = "./cart.php";
}
}
});
return false;
} else {
return true;
}
}
// Wishlist
function apms_wishlist(it_id) {
if(!it_id) {
alert("코드가 올바르지 않습니다.");
return false;
}
$.post("./itemwishlist.php", { it_id: it_id }, function(error) {
if(error != "OK") {
alert(error.replace(/\\n/g, "\n"));
return false;
} else {
if(confirm("위시리스트에 담겼습니다.\n\n바로 확인하시겠습니까?")) {
document.location.href = "./wishlist.php";
}
}
});
return false;
}
// Recommend
function apms_recommend(it_id, ca_id) {
if (!g5_is_member) {
alert("회원만 추천하실 수 있습니다.");
} else {
url = "./itemrecommend.php?it_id=" + it_id + "&ca_id=" + ca_id;
opt = "scrollbars=yes,width=616,height=420,top=10,left=10";
popup_window(url, "itemrecommend", opt);
}
}
</script>
<div class="pull-right">
<?php include_once(G5_SNS_PATH."/item.sns.skin.php"); ?>
</div>
<div class="clearfix"></div>
<?php if ($is_tag) { // 태그 ?>
<p class="item-tag"><i class="fa fa-tags"></i> <?php echo $tag_list;?></p>
<?php } ?>
</div>
</div>
</div>
/js/shop.js 파일에 계산관련 스크립트가 있습니다.
답변을 작성하시기 전에 로그인 해주세요.