#283 개인결제 기능 추가
This commit is contained in:
327
mobile/shop/kcp/personalpay_approval_form.php
Normal file
327
mobile/shop/kcp/personalpay_approval_form.php
Normal file
@ -0,0 +1,327 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
/* ============================================================================== */
|
||||
/* = PAGE : 결제 요청 PAGE = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 이 페이지는 주문 페이지를 통해서 결제자가 결제 요청을 하는 페이지 = */
|
||||
/* = 입니다. 아래의 ※ 필수, ※ 옵션 부분과 매뉴얼을 참조하셔서 연동을 = */
|
||||
/* = 진행하여 주시기 바랍니다. = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 연동시 오류가 발생하는 경우 아래의 주소로 접속하셔서 확인하시기 바랍니다.= */
|
||||
/* = 접속 주소 : http://testpay.kcp.co.kr/pgsample/FAQ/search_error.jsp = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = Copyright (c) 2010.05 KCP Inc. All Rights Reserved. = */
|
||||
/* ============================================================================== */
|
||||
?>
|
||||
<?php
|
||||
/* ============================================================================== */
|
||||
/* = 환경 설정 파일 Include = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = ※ 필수 = */
|
||||
/* = 테스트 및 실결제 연동시 site_conf_inc.php파일을 수정하시기 바랍니다. = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
|
||||
include G4_MSHOP_PATH.'/settle_kcp.inc.php'; // 환경설정 파일 include
|
||||
?>
|
||||
<?php
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 환경 설정 파일 Include END = */
|
||||
/* ============================================================================== */
|
||||
?>
|
||||
<?php
|
||||
/* kcp와 통신후 kcp 서버에서 전송되는 결제 요청 정보*/
|
||||
$req_tx = $_POST[ "req_tx" ]; // 요청 종류
|
||||
$res_cd = $_POST[ "res_cd" ]; // 응답 코드
|
||||
$tran_cd = $_POST[ "tran_cd" ]; // 트랜잭션 코드
|
||||
$ordr_idxx = $_POST[ "ordr_idxx" ]; // 쇼핑몰 주문번호
|
||||
$good_name = $_POST[ "good_name" ]; // 상품명
|
||||
$good_mny = $_POST[ "good_mny" ]; // 결제 총금액
|
||||
$buyr_name = $_POST[ "buyr_name" ]; // 주문자명
|
||||
$buyr_tel1 = $_POST[ "buyr_tel1" ]; // 주문자 전화번호
|
||||
$buyr_tel2 = $_POST[ "buyr_tel2" ]; // 주문자 핸드폰 번호
|
||||
$buyr_mail = $_POST[ "buyr_mail" ]; // 주문자 E-mail 주소
|
||||
$use_pay_method = $_POST[ "use_pay_method" ]; // 결제 방법
|
||||
$enc_info = $_POST[ "enc_info" ]; // 암호화 정보
|
||||
$enc_data = $_POST[ "enc_data" ]; // 암호화 데이터
|
||||
$rcvr_name = $_POST[ "rcvr_name" ]; // 수취인 이름
|
||||
$rcvr_tel1 = $_POST[ "rcvr_tel1" ]; // 수취인 전화번호
|
||||
$rcvr_tel2 = $_POST[ "rcvr_tel2" ]; // 수취인 휴대폰번호
|
||||
$rcvr_mail = $_POST[ "rcvr_mail" ]; // 수취인 E-Mail
|
||||
$rcvr_zipx = $_POST[ "rcvr_zipx" ]; // 수취인 우편번호
|
||||
$rcvr_add1 = $_POST[ "rcvr_add1" ]; // 수취인 주소
|
||||
$rcvr_add2 = $_POST[ "rcvr_add2" ]; // 수취인 상세주소
|
||||
|
||||
/* 주문폼에서 전송되는 정보 */
|
||||
$ipgm_date = $_POST[ "ipgm_date" ]; // 입금마감일
|
||||
$settle_method = $_POST[ "settle_method" ]; // 결제방법
|
||||
$good_info = $_POST[ "good_info" ]; // 에스크로 상품정보
|
||||
$bask_cntx = $_POST[ "bask_cntx" ]; // 장바구니 상품수
|
||||
$tablet_size = $_POST[ "tablet_size" ]; // 모바일기기 화면비율
|
||||
|
||||
$comm_tax_mny = $_POST[ "comm_tax_mny" ]; // 과세금액
|
||||
$comm_vat_mny = $_POST[ "comm_vat_mny" ]; // 부가세
|
||||
$comm_free_mny = $_POST["comm_free_mny" ]; // 비과세금액
|
||||
|
||||
/*
|
||||
* 기타 파라메터 추가 부분 - Start -
|
||||
*/
|
||||
$param_opt_1 = $_POST[ "param_opt_1" ]; // 기타 파라메터 추가 부분
|
||||
$param_opt_2 = $_POST[ "param_opt_2" ]; // 기타 파라메터 추가 부분
|
||||
$param_opt_3 = $_POST[ "param_opt_3" ]; // 기타 파라메터 추가 부분
|
||||
/*
|
||||
* 기타 파라메터 추가 부분 - End -
|
||||
*/
|
||||
|
||||
/* kcp 데이터 캐릭터셋 변환 */
|
||||
if($res_cd != '') {
|
||||
$good_name = iconv('euc-kr', 'utf-8', $good_name);
|
||||
$buyr_name = iconv('euc-kr', 'utf-8', $buyr_name);
|
||||
$rcvr_name = iconv('euc-kr', 'utf-8', $rcvr_name);
|
||||
$rcvr_add1 = iconv('euc-kr', 'utf-8', $rcvr_add1);
|
||||
$rcvr_add2 = iconv('euc-kr', 'utf-8', $rcvr_add2);
|
||||
}
|
||||
|
||||
switch($settle_method)
|
||||
{
|
||||
case '신용카드':
|
||||
$pay_method = 'CARD';
|
||||
$ActionResult = 'card';
|
||||
break;
|
||||
case '계좌이체':
|
||||
$pay_method = 'BANK';
|
||||
$ActionResult = 'acnt';
|
||||
break;
|
||||
case '휴대폰':
|
||||
$pay_method = 'MOBX';
|
||||
$ActionResult = 'mobx';
|
||||
break;
|
||||
case '가상계좌':
|
||||
$pay_method = 'VCNT';
|
||||
$ActionResult = 'vcnt';
|
||||
break;
|
||||
default:
|
||||
$pay_method = '';
|
||||
$ActionResult = '';
|
||||
break;
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
|
||||
<head>
|
||||
<title>스마트폰 웹 결제창</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta http-equiv="Cache-Control" content="No-Cache">
|
||||
<meta http-equiv="Pragma" content="No-Cache">
|
||||
<meta name="viewport" content="width=device-width; user-scalable=<?php echo $tablet_size; ?>; initial-scale=<?php echo $tablet_size; ?>; maximum-scale=<?php echo $tablet_size; ?>; minimum-scale=<?php echo $tablet_size; ?>">
|
||||
|
||||
<style type="text/css">
|
||||
.LINE { background-color:#afc3ff }
|
||||
.HEAD { font-family:"굴림","굴림체"; font-size:9pt; color:#065491; background-color:#eff5ff; text-align:left; padding:3px; }
|
||||
.TEXT { font-family:"굴림","굴림체"; font-size:9pt; color:#000000; background-color:#FFFFFF; text-align:left; padding:3px; }
|
||||
B { font-family:"굴림","굴림체"; font-size:13pt; color:#065491;}
|
||||
INPUT { font-family:"굴림","굴림체"; font-size:9pt; }
|
||||
SELECT{font-size:9pt;}
|
||||
.COMMENT { font-family:"굴림","굴림체"; font-size:9pt; line-height:160% }
|
||||
</style>
|
||||
<!-- 거래등록 하는 kcp 서버와 통신을 위한 스크립트-->
|
||||
<script src="<?php echo G4_MSHOP_URL; ?>/kcp/approval_key.js"></script>
|
||||
|
||||
|
||||
<script language="javascript">
|
||||
/* kcp web 결제창 호출 (변경불가)*/
|
||||
function call_pay_form()
|
||||
{
|
||||
|
||||
var v_frm = document.sm_form;
|
||||
|
||||
layer_cont_obj = document.getElementById("content");
|
||||
layer_receipt_obj = document.getElementById("layer_receipt");
|
||||
|
||||
layer_cont_obj.style.display = "none";
|
||||
layer_receipt_obj.style.display = "block";
|
||||
|
||||
v_frm.target = "frm_receipt";
|
||||
v_frm.action = PayUrl;
|
||||
|
||||
if(v_frm.Ret_URL.value == "")
|
||||
{
|
||||
/* Ret_URL값은 현 페이지의 URL 입니다. */
|
||||
alert("연동시 Ret_URL을 반드시 설정하셔야 됩니다.");
|
||||
return false;
|
||||
}
|
||||
|
||||
v_frm.submit();
|
||||
}
|
||||
|
||||
|
||||
/* kcp 통신을 통해 받은 암호화 정보 체크 후 결제 요청*/
|
||||
function chk_pay()
|
||||
{
|
||||
/*kcp 결제서버에서 가맹점 주문페이지로 폼값을 보내기위한 설정(변경불가)*/
|
||||
|
||||
var sm_form = document.sm_form;
|
||||
|
||||
if (sm_form.res_cd.value == "3001" )
|
||||
{
|
||||
alert("사용자가 취소하였습니다.");
|
||||
window.close();
|
||||
return false;
|
||||
}
|
||||
else if (sm_form.res_cd.value == "3000" )
|
||||
{
|
||||
alert("30만원 이상 결제 할수 없습니다.");
|
||||
window.close();
|
||||
return false;
|
||||
}
|
||||
|
||||
if (sm_form.enc_data.value != "" && sm_form.enc_info.value != "" && sm_form.tran_cd.value !="" )
|
||||
{
|
||||
var of = window.opener.document.fpersonalpayform;
|
||||
|
||||
of.req_tx.value = "<?php echo $req_tx; ?>";
|
||||
of.res_cd.value = "<?php echo $res_cd; ?>";
|
||||
of.tran_cd.value = "<?php echo $tran_cd; ?>";
|
||||
of.ordr_idxx.value = "<?php echo $ordr_idxx; ?>";
|
||||
of.good_mny.value = "<?php echo $good_mny; ?>";
|
||||
of.good_name.value = "<?php echo $good_name; ?>";
|
||||
of.buyr_name.value = "<?php echo $buyr_name; ?>";
|
||||
of.buyr_tel1.value = "<?php echo $buyr_tel1; ?>";
|
||||
of.buyr_tel2.value = "<?php echo $buyr_tel2; ?>";
|
||||
of.buyr_mail.value = "<?php echo $buyr_mail; ?>";
|
||||
of.enc_info.value = "<?php echo $enc_info; ?>";
|
||||
of.enc_data.value = "<?php echo $enc_data; ?>";
|
||||
of.use_pay_method.value = "<?php echo $use_pay_method; ?>";
|
||||
of.rcvr_name.value = "<?php echo $rcvr_name; ?>";
|
||||
of.rcvr_tel1.value = "<?php echo $rcvr_tel1; ?>";
|
||||
of.rcvr_tel2.value = "<?php echo $rcvr_tel2; ?>";
|
||||
of.rcvr_mail.value = "<?php echo $rcvr_mail; ?>";
|
||||
of.rcvr_zipx.value = "<?php echo $rcvr_zipx; ?>";
|
||||
of.rcvr_add1.value = "<?php echo $rcvr_add1; ?>";
|
||||
of.rcvr_add2.value = "<?php echo $rcvr_add2; ?>";
|
||||
of.param_opt_1.value = "<?php echo $param_opt_1; ?>";
|
||||
of.param_opt_2.value = "<?php echo $param_opt_2; ?>";
|
||||
of.param_opt_3.value = "<?php echo $param_opt_3; ?>";
|
||||
|
||||
var od = window.opener.document;
|
||||
od.getElementById("display_pay_button").style.display = "none";
|
||||
//od.getElementById("show_req_btn").style.display = "none";
|
||||
//od.getElementById("show_progress").style.display = "block";
|
||||
//od.getElementById("show_pay_btn").style.display = "inline";
|
||||
|
||||
//alert("주문하기를 클릭하셔야 주문이 완료됩니다.");
|
||||
window.opener.fpersonalpayform_check();
|
||||
window.close();
|
||||
} else {
|
||||
kcp_AJAX();
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="chk_pay();">
|
||||
|
||||
<div id="content">
|
||||
|
||||
<form name="sm_form" method="POST" accept-charset="euc-kr">
|
||||
|
||||
<input type="hidden" name="good_name" value="<?php echo $good_name; ?>">
|
||||
<input type="hidden" name="good_mny" value="<?php echo $good_mny; ?>" >
|
||||
<input type="hidden" name='buyr_name' value="<?php echo $buyr_name; ?>">
|
||||
<input type="hidden" name="buyr_tel1" value="<?php echo $buyr_tel1; ?>">
|
||||
<input type="hidden" name="buyr_tel2" value="<?php echo $buyr_tel2; ?>">
|
||||
<input type="hidden" name="buyr_mail" value="<?php echo $buyr_mail; ?>">
|
||||
<input type="hidden" name="ipgm_date" value="<?php echo $ipgm_date; ?>">
|
||||
|
||||
<!-- 필수 사항 -->
|
||||
|
||||
<!-- 요청 구분 -->
|
||||
<input type="hidden" name="req_tx" value="pay">
|
||||
<!-- 사이트 코드 -->
|
||||
<input type="hidden" name="site_cd" value="<?php echo $g_conf_site_cd; ?>">
|
||||
<!-- 사이트 키 -->
|
||||
<input type="hidden" name="site_key" value="<?php echo $g_conf_site_key; ?>">
|
||||
<!-- 사이트 이름 -->
|
||||
<input type="hidden" name="shop_name" value="<?php echo $g_conf_site_name; ?>">
|
||||
<!-- 결제수단-->
|
||||
<input type="hidden" name="pay_method" value="<?php echo $pay_method; ?>">
|
||||
<!-- 주문번호 -->
|
||||
<input type="hidden" name="ordr_idxx" value="<?php echo $ordr_idxx; ?>">
|
||||
<!-- 최대 할부개월수 -->
|
||||
<input type="hidden" name="quotaopt" value="12">
|
||||
<!-- 통화 코드 -->
|
||||
<input type="hidden" name="currency" value="410">
|
||||
<!-- 결제등록 키 -->
|
||||
<input type="hidden" name="approval_key" id="approval">
|
||||
<!-- 리턴 URL (kcp와 통신후 결제를 요청할 수 있는 암호화 데이터를 전송 받을 가맹점의 주문페이지 URL) -->
|
||||
<!-- 반드시 가맹점 주문페이지의 URL을 입력 해주시기 바랍니다. -->
|
||||
<input type="hidden" name="Ret_URL" value="<?php echo G4_MSHOP_URL; ?>/kcp/personalpay_approval_form.php">
|
||||
<!-- 인증시 필요한 파라미터(변경불가)-->
|
||||
<input type="hidden" name="ActionResult" value="<?php echo $ActionResult; ?>">
|
||||
<!-- 에스크로 사용유무 에스크로 사용 업체(가상계좌만 해당)는 Y로 세팅 해주시기 바랍니다.-->
|
||||
<input type="hidden" name="escw_used" value="Y">
|
||||
<!-- 에스크로 결제처리모드 -->
|
||||
<input type="hidden" name="pay_mod" value="<?php echo ($default['de_escrow_use']?'O':'N'); ?>">
|
||||
<!-- 수취인이름 -->
|
||||
<input type="hidden" name="rcvr_name" value="<?php echo $rcvr_name; ?>">
|
||||
<!-- 수취인 연락처 -->
|
||||
<input type="hidden" name="rcvr_tel1" value="<?php echo $rcvr_tel1; ?>">
|
||||
<!-- 수취인 휴대폰 번호 -->
|
||||
<input type="hidden" name="rcvr_tel2" value="<?php echo $rcvr_tel2; ?>">
|
||||
<!-- 수취인 E-MAIL -->
|
||||
<input type="hidden" name="rcvr_add1" value="<?php echo $rcvr_add1; ?>">
|
||||
<!-- 수취인 우편번호 -->
|
||||
<input type="hidden" name="rcvr_add2" value="<?php echo $rcvr_add2; ?>">
|
||||
<!-- 수취인 주소 -->
|
||||
<input type="hidden" name="rcvr_mail" value="<?php echo $rcvr_mail; ?>">
|
||||
<!-- 수취인 상세 주소 -->
|
||||
<input type="hidden" name="rcvr_zipx" value="<?php echo $rcvr_zipx; ?>">
|
||||
<!-- 장바구니 상품 개수 -->
|
||||
<input type="hidden" name="bask_cntx" value="<?php echo $bask_cntx; ?>">
|
||||
<!-- 장바구니 정보(상단 스크립트 참조) -->
|
||||
<input type="hidden" name="good_info" value="<?php echo $good_info; ?>">
|
||||
<!-- 배송소요기간 -->
|
||||
<input type="hidden" name="deli_term" value="03">
|
||||
<!-- 기타 파라메터 추가 부분 - Start - -->
|
||||
<input type="hidden" name="param_opt_1" value="<?php echo $param_opt_1; ?>"/>
|
||||
<input type="hidden" name="param_opt_2" value="<?php echo $param_opt_2; ?>"/>
|
||||
<input type="hidden" name="param_opt_3" value="<?php echo $param_opt_3; ?>"/>
|
||||
<!-- 기타 파라메터 추가 부분 - End - -->
|
||||
<!-- 화면 크기조정 부분 - Start - -->
|
||||
<input type="hidden" name="tablet_size" value="<?php echo $tablet_size; ?>"/>
|
||||
<!-- 화면 크기조정 부분 - End - -->
|
||||
<!--
|
||||
사용 카드 설정
|
||||
<input type="hidden" name="used_card" value="CClg:ccDI">
|
||||
/* 무이자 옵션
|
||||
※ 설정할부 (가맹점 관리자 페이지에 설정 된 무이자 설정을 따른다) - "" 로 설정
|
||||
※ 일반할부 (KCP 이벤트 이외에 설정 된 모든 무이자 설정을 무시한다) - "N" 로 설정
|
||||
※ 무이자 할부 (가맹점 관리자 페이지에 설정 된 무이자 이벤트 중 원하는 무이자 설정을 세팅한다) - "Y" 로 설정
|
||||
<input type="hidden" name="kcp_noint" value=""/> */
|
||||
|
||||
/* 무이자 설정
|
||||
※ 주의 1 : 할부는 결제금액이 50,000 원 이상일 경우에만 가능
|
||||
※ 주의 2 : 무이자 설정값은 무이자 옵션이 Y일 경우에만 결제 창에 적용
|
||||
예) 전 카드 2,3,6개월 무이자(국민,비씨,엘지,삼성,신한,현대,롯데,외환) : ALL-02:03:04
|
||||
BC 2,3,6개월, 국민 3,6개월, 삼성 6,9개월 무이자 : CCBC-02:03:06,CCKM-03:06,CCSS-03:06:04
|
||||
<input type="hidden" name="kcp_noint_quota" value="CCBC-02:03:06,CCKM-03:06,CCSS-03:06:09"/> */
|
||||
-->
|
||||
|
||||
<input type="hidden" name="res_cd" value="<?php echo $res_cd; ?>"> <!-- 결과 코드 -->
|
||||
<input type="hidden" name="tran_cd" value="<?php echo $tran_cd; ?>"> <!-- 트랜잭션 코드 -->
|
||||
<input type="hidden" name="enc_info" value="<?php echo $enc_info; ?>"> <!-- 암호화 정보 -->
|
||||
<input type="hidden" name="enc_data" value="<?php echo $enc_data; ?>"> <!-- 암호화 데이터 -->
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- 스마트폰에서 KCP 결제창을 레이어 형태로 구현-->
|
||||
<div id="layer_receipt" style="position:absolute; left:1px; top:1px; width:310;height:400; z-index:1; display:none;">
|
||||
<table width="310" border="-" cellspacing="0" cellpadding="0" style="text-align:center">
|
||||
<tr>
|
||||
<td>
|
||||
<iframe name="frm_receipt" frameborder="0" border="0" width="310" height="400" scrolling="auto"></iframe>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
66
mobile/shop/personalpay.php
Normal file
66
mobile/shop/personalpay.php
Normal file
@ -0,0 +1,66 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
|
||||
$g4['title'] = '개인결제 리스트';
|
||||
include_once(G4_MSHOP_PATH.'/_head.php');
|
||||
?>
|
||||
|
||||
<!-- 상품 목록 시작 { -->
|
||||
<div id="sct">
|
||||
|
||||
<?php
|
||||
// 리스트 유형별로 출력
|
||||
$list_file = G4_MSHOP_SKIN_PATH.'/personalpay.skin.php';
|
||||
if (file_exists($list_file)) {
|
||||
|
||||
$list_mod = 10;
|
||||
$img_width = 230;
|
||||
$img_height = 230;
|
||||
|
||||
$sql_common = " from {$g4['shop_personalpay_table']}
|
||||
where pp_use = '1'
|
||||
and pp_receipt_amount = '0' ";
|
||||
|
||||
// 총몇개 = 한줄에 몇개 * 몇줄
|
||||
$items = $list_mod;
|
||||
|
||||
$sql = "select COUNT(*) as cnt $sql_common ";
|
||||
$row = sql_fetch($sql);
|
||||
$total_count = $row['cnt'];
|
||||
|
||||
// 전체 페이지 계산
|
||||
$total_page = ceil($total_count / $items);
|
||||
// 페이지가 없으면 첫 페이지 (1 페이지)
|
||||
if ($page == "") $page = 1;
|
||||
// 시작 레코드 구함
|
||||
$from_record = ($page - 1) * $items;
|
||||
|
||||
$sql = " select *
|
||||
$sql_common
|
||||
order by pp_id desc
|
||||
limit $from_record, $items";
|
||||
$result = sql_query($sql);
|
||||
|
||||
include $list_file;
|
||||
}
|
||||
else
|
||||
{
|
||||
$i = 0;
|
||||
$error = '<p class="sct_nofile">personalpay.skin.php 파일을 찾을 수 없습니다.<br>관리자에게 알려주시면 감사하겠습니다.</p>';
|
||||
}
|
||||
|
||||
if ($i==0)
|
||||
{
|
||||
echo '<div><p class="sct_noitem">등록된 개인결제가 없습니다.</p></div>';
|
||||
}
|
||||
?>
|
||||
|
||||
<?php
|
||||
echo get_paging($config['cf_mobile_pages'], $page, $total_page, $_SERVER['PHP_SELF'].'?'.$qstr.'&page=');
|
||||
?>
|
||||
</div>
|
||||
<!-- } 상품 목록 끝 -->
|
||||
|
||||
<?php
|
||||
include_once(G4_MSHOP_PATH.'/_tail.php');
|
||||
?>
|
||||
375
mobile/shop/personalpayform.php
Normal file
375
mobile/shop/personalpayform.php
Normal file
@ -0,0 +1,375 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
|
||||
$sql = " select * from {$g4['shop_personalpay_table']} where pp_id = '$pp_id' and pp_use = '1' and pp_amount > 0 ";
|
||||
$pp = sql_fetch($sql);
|
||||
|
||||
if(!$pp['pp_id'])
|
||||
alert('개인결제 정보가 존재하지 않습니다.');
|
||||
|
||||
if($pp['pp_receipt_amount'] > 0)
|
||||
alert('이미 결제하신 개인결제 내역입니다.');
|
||||
|
||||
$g4['title'] = $pp['pp_name'].'님 개인결제';
|
||||
include_once(G4_MSHOP_PATH.'/_head.php');
|
||||
|
||||
$action_url = G4_HTTPS_MSHOP_URL.'/personalpayformupdate.php';
|
||||
if (file_exists('./settle_'.$default['de_card_pg'].'.inc.php')) {
|
||||
include './settle_'.$default['de_card_pg'].'.inc.php';
|
||||
}
|
||||
|
||||
// 결제등록 요청시 사용할 입금마감일
|
||||
$ipgm_date = date("Ymd", (G4_SERVER_TIME + 86400 * 5));
|
||||
$tablet_size = "1.0"; // 화면 사이즈 조정 - 기기화면에 맞게 수정(갤럭시탭,아이패드 - 1.85, 스마트폰 - 1.0)
|
||||
|
||||
// 개인결제 체크를 위한 hash
|
||||
$hash_data = md5($pp['pp_id'].$pp['pp_amount'].$pp['pp_time']);
|
||||
set_session('ss_personalpay_id', $pp['pp_id']);
|
||||
set_session('ss_personalpay_hash', $hash_data);
|
||||
?>
|
||||
|
||||
<div id="sod_approval_frm">
|
||||
<!-- 거래등록 하는 kcp 서버와 통신을 위한 스크립트-->
|
||||
<script src="<?php echo G4_MSHOP_URL; ?>/kcp/approval_key.js"></script>
|
||||
|
||||
<form name="sm_form" method="POST" action="<?php echo G4_MSHOP_URL; ?>/kcp/personalpay_approval_form.php">
|
||||
<input type="hidden" name="good_name" value="<?php echo $pp['pp_name'].'님 개인결제'; ?>">
|
||||
<input type="hidden" name="good_mny" value="<?php echo $pp['pp_amount']; ?>" >
|
||||
<input type="hidden" name="buyr_name" value="">
|
||||
<input type="hidden" name="buyr_tel1" value="">
|
||||
<input type="hidden" name="buyr_tel2" value="">
|
||||
<input type="hidden" name="buyr_mail" value="">
|
||||
<input type="hidden" name="ipgm_date" value="<?php echo $ipgm_date; ?>">
|
||||
<input type="hidden" name="settle_method" value="">
|
||||
<!-- 주문번호 -->
|
||||
<input type="hidden" name="ordr_idxx" value="<?php echo $pp['pp_id']; ?>">
|
||||
<!-- 결제등록 키 -->
|
||||
<input type="hidden" name="approval_key" id="approval">
|
||||
<!-- 수취인이름 -->
|
||||
<input type="hidden" name="rcvr_name" value="">
|
||||
<!-- 수취인 연락처 -->
|
||||
<input type="hidden" name="rcvr_tel1" value="">
|
||||
<!-- 수취인 휴대폰 번호 -->
|
||||
<input type="hidden" name="rcvr_tel2" value="">
|
||||
<!-- 수취인 E-MAIL -->
|
||||
<input type="hidden" name="rcvr_add1" value="">
|
||||
<!-- 수취인 우편번호 -->
|
||||
<input type="hidden" name="rcvr_add2" value="">
|
||||
<!-- 수취인 주소 -->
|
||||
<input type="hidden" name="rcvr_mail" value="">
|
||||
<!-- 수취인 상세 주소 -->
|
||||
<input type="hidden" name="rcvr_zipx" value="">
|
||||
<!-- 장바구니 상품 개수 -->
|
||||
<input type="hidden" name="bask_cntx" value="1">
|
||||
<!-- 장바구니 정보(상단 스크립트 참조) -->
|
||||
<input type="hidden" name="good_info" value="<?php echo $pp['pp_name'].'님 개인결제'; ?>">
|
||||
<!-- 배송소요기간 -->
|
||||
<input type="hidden" name="deli_term" value="03">
|
||||
<!-- 기타 파라메터 추가 부분 - Start - -->
|
||||
<input type="hidden" name="param_opt_1" value="<?php echo $param_opt_1; ?>"/>
|
||||
<input type="hidden" name="param_opt_2" value="<?php echo $param_opt_2; ?>"/>
|
||||
<input type="hidden" name="param_opt_3" value="<?php echo $param_opt_3; ?>"/>
|
||||
<!-- 기타 파라메터 추가 부분 - End - -->
|
||||
<!-- 화면 크기조정 부분 - Start - -->
|
||||
<input type="hidden" name="tablet_size" value="<?php echo $tablet_size; ?>"/>
|
||||
<!-- 화면 크기조정 부분 - End - -->
|
||||
<!--
|
||||
사용 카드 설정
|
||||
<input type="hidden" name='used_card' value="CClg:ccDI">
|
||||
/* 무이자 옵션
|
||||
※ 설정할부 (가맹점 관리자 페이지에 설정 된 무이자 설정을 따른다) - "" 로 설정
|
||||
※ 일반할부 (KCP 이벤트 이외에 설정 된 모든 무이자 설정을 무시한다) - "N" 로 설정
|
||||
※ 무이자 할부 (가맹점 관리자 페이지에 설정 된 무이자 이벤트 중 원하는 무이자 설정을 세팅한다) - "Y" 로 설정
|
||||
<input type="hidden" name="kcp_noint" value=""/> */
|
||||
|
||||
/* 무이자 설정
|
||||
※ 주의 1 : 할부는 결제금액이 50,000 원 이상일 경우에만 가능
|
||||
※ 주의 2 : 무이자 설정값은 무이자 옵션이 Y일 경우에만 결제 창에 적용
|
||||
예) 전 카드 2,3,6개월 무이자(국민,비씨,엘지,삼성,신한,현대,롯데,외환) : ALL-02:03:04
|
||||
BC 2,3,6개월, 국민 3,6개월, 삼성 6,9개월 무이자 : CCBC-02:03:06,CCKM-03:06,CCSS-03:06:04
|
||||
<input type="hidden" name="kcp_noint_quota" value="CCBC-02:03:06,CCKM-03:06,CCSS-03:06:09"/> */
|
||||
-->
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="sod_frm">
|
||||
<form name="fpersonalpayform" method="post" action="<?php echo $action_url; ?>" autocomplete="off">
|
||||
<input type="hidden" name="pp_id" value="<?php echo $pp['pp_id']; ?>">
|
||||
<section id="sod_frm_orderer">
|
||||
<h2>개인결제정보</h2>
|
||||
|
||||
<table class="frm_tbl">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>결제금액</th>
|
||||
<td><?php echo display_price($pp['pp_amount']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="pp_name">이름</label></th>
|
||||
<td><input type="text" name="pp_name" value="<?php echo $pp['pp_name']; ?>" id="pp_name" required class="required frm_input"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="pp_email">이메일</label></th>
|
||||
<td><input type="text" name="pp_email" value="<?php echo $member['mb_email']; ?>" id="pp_email" required class="required frm_input"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="pp_hp">휴대폰</label></th>
|
||||
<td><input type="text" name="pp_hp" value="<?php echo $member['mb_hp']; ?>" id="pp_hp" class="frm_input"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<?php
|
||||
$multi_settle == 0;
|
||||
$checked = '';
|
||||
|
||||
$escrow_title = "";
|
||||
if ($default['de_escrow_use']) {
|
||||
$escrow_title = "에스크로 ";
|
||||
}
|
||||
|
||||
if ($default['de_vbank_use'] || $default['de_bank_use'] || $default['de_bank_use'] || $default['de_bank_use']) {
|
||||
echo '<fieldset id="sod_frm_paysel">';
|
||||
echo '<legend>결제방법 선택</legend>';
|
||||
}
|
||||
|
||||
// 가상계좌 사용
|
||||
if ($default['de_vbank_use']) {
|
||||
$multi_settle++;
|
||||
echo '<input type="radio" id="pp_settle_vbank" name="pp_settle_case" value="가상계좌" '.$checked.'> <label for="pp_settle_vbank">'.$escrow_title.'가상계좌</label>'.PHP_EOL;
|
||||
$checked = '';
|
||||
}
|
||||
|
||||
// 계좌이체 사용
|
||||
if ($default['de_iche_use']) {
|
||||
$multi_settle++;
|
||||
echo '<input type="radio" id="pp_settle_iche" name="pp_settle_case" value="계좌이체" '.$checked.'> <label for="pp_settle_iche">'.$escrow_title.'계좌이체</label>'.PHP_EOL;
|
||||
$checked = '';
|
||||
}
|
||||
|
||||
// 휴대폰 사용
|
||||
if ($default['de_hp_use']) {
|
||||
$multi_settle++;
|
||||
echo '<input type="radio" id="pp_settle_hp" name="pp_settle_case" value="휴대폰" '.$checked.'> <label for="pp_settle_hp">휴대폰</label>'.PHP_EOL;
|
||||
$checked = '';
|
||||
}
|
||||
|
||||
// 신용카드 사용
|
||||
if ($default['de_card_use']) {
|
||||
$multi_settle++;
|
||||
echo '<input type="radio" id="pp_settle_card" name="pp_settle_case" value="신용카드" '.$checked.'> <label for="pp_settle_card">신용카드</label>'.PHP_EOL;
|
||||
$checked = '';
|
||||
}
|
||||
|
||||
if ($default['de_vbank_use'] || $default['de_bank_use'] || $default['de_bank_use'] || $default['de_bank_use']) {
|
||||
echo '</fieldset>';
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
<?php
|
||||
if (!$default['de_card_point'])
|
||||
echo '<p><strong>무통장입금</strong> 이외의 결제 수단으로 결제하시는 경우 포인트를 적립해드리지 않습니다.</p>';
|
||||
|
||||
if ($multi_settle == 0)
|
||||
echo '<p>결제할 방법이 없습니다.<br>운영자에게 알려주시면 감사하겠습니다.</p>';
|
||||
?>
|
||||
</section>
|
||||
|
||||
<input type="hidden" name="req_tx" value=""> <!-- 요청 구분 -->
|
||||
<input type="hidden" name="res_cd" value=""> <!-- 결과 코드 -->
|
||||
<input type="hidden" name="tran_cd" value=""> <!-- 트랜잭션 코드 -->
|
||||
<input type="hidden" name="ordr_idxx" value=""> <!-- 주문번호 -->
|
||||
<input type="hidden" name="good_mny" value=""> <!-- 결제금액 -->
|
||||
<input type="hidden" name="good_name" value=""> <!-- 상품명 -->
|
||||
<input type="hidden" name="buyr_name" value=""> <!-- 주문자명 -->
|
||||
<input type="hidden" name="buyr_tel1" value=""> <!-- 주문자 전화번호 -->
|
||||
<input type="hidden" name="buyr_tel2" value=""> <!-- 주문자 휴대폰번호 -->
|
||||
<input type="hidden" name="buyr_mail" value=""> <!-- 주문자 E-mail -->
|
||||
<input type="hidden" name="enc_info" value=""> <!-- 암호화 정보 -->
|
||||
<input type="hidden" name="enc_data" value=""> <!-- 암호화 데이터 -->
|
||||
<input type="hidden" name="use_pay_method" value=""> <!-- 요청된 결제 수단 -->
|
||||
<input type="hidden" name="rcvr_name" value=""> <!-- 수취인 이름 -->
|
||||
<input type="hidden" name="rcvr_tel1" value=""> <!-- 수취인 전화번호 -->
|
||||
<input type="hidden" name="rcvr_tel2" value=""> <!-- 수취인 휴대폰번호 -->
|
||||
<input type="hidden" name="rcvr_mail" value=""> <!-- 수취인 E-Mail -->
|
||||
<input type="hidden" name="rcvr_zipx" value=""> <!-- 수취인 우편번호 -->
|
||||
<input type="hidden" name="rcvr_add1" value=""> <!-- 수취인 주소 -->
|
||||
<input type="hidden" name="rcvr_add2" value=""> <!-- 수취인 상세 주소 -->
|
||||
<input type="hidden" name="param_opt_1" value="">
|
||||
<input type="hidden" name="param_opt_2" value="">
|
||||
<input type="hidden" name="param_opt_3" value="">
|
||||
|
||||
<p id="show_progress" style="display:none;">반드시 결제하기 버튼을 클릭 하셔야만 결제가 진행됩니다.</p>
|
||||
|
||||
<div id="display_pay_button" class="btn_confirm">
|
||||
<span id="show_req_btn"><input type="button" name="submitChecked" onClick="kcp_approval();" value="결제등록요청"class="btn_submit"></span>
|
||||
<span id="show_pay_btn" style="display:none;"><input type="button" onClick="fpersonalpayform_check();" value="결제하기" class="btn_submit"></span>
|
||||
<a href="javascript:history.go(-1);" class="btn_cancel">취소</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<?php if ($default['de_escrow_use']) { ?>
|
||||
<section id="sod_frm_escrow">
|
||||
<h2>에스크로 안내</h2>
|
||||
<form name="escrow_foot" method="post" action="http://admin.kcp.co.kr/Modules/escrow/kcp_pop.jsp">
|
||||
<input type="hidden" name="site_cd" value="SR<?php echo $default['de_kcp_mid']; ?>">
|
||||
<table border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td align='center'><img src="<?php echo G4_SHOP_URL; ?>/img/marks_escrow/escrow_foot.gif" width="290" height="92" border="0" usemap="#Map"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='line-height:150%;'>
|
||||
<br>
|
||||
<strong>에스크로(escrow) 제도란?</strong>
|
||||
<br>상거래 시에, 판매자와 구매자의 사이에 신뢰할 수 있는 중립적인 제삼자(여기서는 <a href='http://kcp.co.kr' target='_blank'>KCP</a>)가 중개하여
|
||||
금전 또는 물품을 거래를 하도록 하는 것, 또는 그러한 서비스를 말한다. 거래의 안전성을 확보하기 위해 이용된다.
|
||||
(2006.4.1 전자상거래 소비자보호법에 따른 의무 시행)
|
||||
<br><br>
|
||||
5만원 이상의 현금 거래에만 해당(에스크로 결제를 선택했을 경우에만 해당)되며,
|
||||
신용카드로 구매하는 거래, 배송이 필요하지 않은 재화 등을 구매하는 거래(컨텐츠 등),
|
||||
5만원 미만의 현금 거래에는 해당되지 않는다.
|
||||
<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<map name="Map" id="Map">
|
||||
<area shape="rect" coords="5,62,74,83" href="javascript:escrow_foot_check()" alt="가입사실확인">
|
||||
</map>
|
||||
</form>
|
||||
</section>
|
||||
|
||||
<script>
|
||||
function escrow_foot_check()
|
||||
{
|
||||
var status = "width=500 height=450 menubar=no,scrollbars=no,resizable=no,status=no";
|
||||
var obj = window.open('', 'escrow_foot_pop', status);
|
||||
|
||||
document.escrow_foot.method = "post";
|
||||
document.escrow_foot.target = "escrow_foot_pop";
|
||||
document.escrow_foot.action = "http://admin.kcp.co.kr/Modules/escrow/kcp_pop.jsp";
|
||||
|
||||
document.escrow_foot.submit();
|
||||
}
|
||||
</script>
|
||||
<?php } ?>
|
||||
|
||||
<!-- <?php if ($default[de_card_use] || $default[de_iche_use]) { echo "결제대행사 : $default[de_card_pg]"; } ?> -->
|
||||
</div>
|
||||
|
||||
<script>
|
||||
/* 결제방법에 따른 처리 후 결제등록요청 실행 */
|
||||
var settle_method = "";
|
||||
|
||||
function kcp_approval()
|
||||
{
|
||||
var f = document.sm_form;
|
||||
var pf = document.fpersonalpayform;
|
||||
|
||||
// 필드체크
|
||||
if(!payfield_check(pf))
|
||||
return false;
|
||||
|
||||
// 금액체크
|
||||
if(!payment_check(pf))
|
||||
return false;
|
||||
|
||||
f.buyr_name.value = pf.pp_name.value;
|
||||
f.buyr_mail.value = pf.pp_email.value;
|
||||
f.buyr_tel1.value = pf.pp_hp.value;
|
||||
f.buyr_tel2.value = pf.pp_hp.value;
|
||||
f.rcvr_name.value = pf.pp_name.value;
|
||||
f.rcvr_tel1.value = pf.pp_hp.value;
|
||||
f.rcvr_tel2.value = pf.pp_hp.value;
|
||||
f.rcvr_mail.value = pf.pp_email.value;
|
||||
f.settle_method.value = settle_method;
|
||||
|
||||
var new_win = window.open("about:blank", "tar_opener", "scrollbars=yes,resizable=yes");
|
||||
f.target = "tar_opener";
|
||||
|
||||
f.submit();
|
||||
}
|
||||
|
||||
function fpersonalpayform_check()
|
||||
{
|
||||
var f = document.fpersonalpayform;
|
||||
|
||||
// 필드체크
|
||||
if(!payfield_check(f))
|
||||
return false;
|
||||
|
||||
// 금액체크
|
||||
if(!payment_check(f))
|
||||
return false;
|
||||
|
||||
if(f.res_cd.value != "0000") {
|
||||
alert("결제등록요청 후 결제해 주십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
f.submit();
|
||||
}
|
||||
|
||||
// 결제폼 필드체크
|
||||
function payfield_check(f)
|
||||
{
|
||||
var settle_case = document.getElementsByName("pp_settle_case");
|
||||
var settle_check = false;
|
||||
for (i=0; i<settle_case.length; i++)
|
||||
{
|
||||
if (settle_case[i].checked)
|
||||
{
|
||||
settle_check = true;
|
||||
settle_method = settle_case[i].value;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!settle_check)
|
||||
{
|
||||
alert("결제방식을 선택하십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// 결제체크
|
||||
function payment_check(f)
|
||||
{
|
||||
var tot_amount = <?php echo (int)$pp['pp_amount']; ?>;
|
||||
|
||||
if (document.getElementById("pp_settle_iche")) {
|
||||
if (document.getElementById("pp_settle_iche").checked) {
|
||||
if (tot_amount < 150) {
|
||||
alert("계좌이체는 150원 이상 결제가 가능합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (document.getElementById("pp_settle_card")) {
|
||||
if (document.getElementById("pp_settle_card").checked) {
|
||||
if (tot_amount < 1000) {
|
||||
alert("신용카드는 1000원 이상 결제가 가능합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (document.getElementById("pp_settle_hp")) {
|
||||
if (document.getElementById("pp_settle_hp").checked) {
|
||||
if (tot_amount < 350) {
|
||||
alert("휴대폰은 350원 이상 결제가 가능합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
include_once(G4_MSHOP_PATH.'/_tail.php');
|
||||
?>
|
||||
154
mobile/shop/personalpayformupdate.php
Normal file
154
mobile/shop/personalpayformupdate.php
Normal file
@ -0,0 +1,154 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
|
||||
if(get_magic_quotes_gpc())
|
||||
{
|
||||
$_GET = array_add_callback("stripslashes", $_GET);
|
||||
$_POST = array_add_callback("stripslashes", $_POST);
|
||||
}
|
||||
$_GET = array_add_callback("mysql_real_escape_string", $_GET);
|
||||
$_POST = array_add_callback("mysql_real_escape_string", $_POST);
|
||||
|
||||
// 결제등록 완료 체크
|
||||
if($_POST['tran_cd'] == '' || $_POST['enc_info'] == '' || $_POST['enc_data'] == '')
|
||||
alert('결제등록 요청 후 주문해 주십시오.');
|
||||
|
||||
// 개인결제 정보
|
||||
$pp_check = false;
|
||||
$sql = " select * from {$g4['shop_personalpay_table']} where pp_id = '{$_POST['pp_id']}' and pp_use = '1' ";
|
||||
$pp = sql_fetch($sql);
|
||||
if(!$pp['pp_id'])
|
||||
alert('개인결제 정보가 존재하지 않습니다.');
|
||||
|
||||
if($pp['pp_receipt_amount'] > 0)
|
||||
alert('이미 결제하신 개인결제 내역입니다.');
|
||||
|
||||
$hash_data = md5($_POST['pp_id'].$_POST['good_mny'].$pp['pp_time']);
|
||||
if($_POST['pp_id'] != get_session('ss_personalpay_id') || $hash_data != get_session('ss_personalpay_hash'))
|
||||
die('개인결제 정보가 올바르지 않습니다.');
|
||||
|
||||
if ($pp_settle_case == "계좌이체")
|
||||
{
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
|
||||
$pp_tno = $tno;
|
||||
$pp_receipt_amount = $amount;
|
||||
$pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time);
|
||||
$pp_deposit_name = $pp_name;
|
||||
$bank_name = iconv("cp949", "utf8", $bank_name);
|
||||
$pp_bank_account = $bank_name;
|
||||
$pg_amount = $amount;
|
||||
}
|
||||
else if ($pp_settle_case == "가상계좌")
|
||||
{
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
|
||||
$pp_tno = $tno;
|
||||
$pp_receipt_amount = 0;
|
||||
$bankname = iconv("cp949", "utf8", $bankname);
|
||||
$depositor = iconv("cp949", "utf8", $depositor);
|
||||
$pp_bank_account = $bankname.' '.$account.' '.$depositor;
|
||||
$pp_deposit_name = $depositor;
|
||||
$pg_amount = $amount;
|
||||
}
|
||||
else if ($pp_settle_case == "휴대폰")
|
||||
{
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
|
||||
$pp_tno = $tno;
|
||||
$pp_receipt_amount = $amount;
|
||||
$pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time);
|
||||
$pp_bank_account = $commid.' '.$mobile_no;
|
||||
$pg_amount = $amount;
|
||||
}
|
||||
else if ($pp_settle_case == "신용카드")
|
||||
{
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
|
||||
$pp_tno = $tno;
|
||||
$pp_receipt_amount = $amount;
|
||||
$pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time);
|
||||
$card_name = iconv("cp949", "utf8", $card_name);
|
||||
$pp_bank_account = $card_name;
|
||||
$pg_amount = $amount;
|
||||
}
|
||||
else
|
||||
{
|
||||
die("od_settle_case Error!!!");
|
||||
}
|
||||
|
||||
// 주문금액과 결제금액이 일치하는지 체크
|
||||
if((int)$pp['pp_amount'] !== (int)$pg_amount) {
|
||||
$cancel_msg = '결제금액 불일치';
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; // 결제취소처리
|
||||
|
||||
die("Receipt Amount Error");
|
||||
}
|
||||
|
||||
if ($is_member)
|
||||
$od_pwd = $member['mb_password'];
|
||||
else
|
||||
$od_pwd = sql_password($_POST['od_pwd']);
|
||||
|
||||
// 결제정보 입력
|
||||
$sql = " update {$g4['shop_personalpay_table']}
|
||||
set pp_tno = '$pp_tno',
|
||||
pp_app_no = '$app_no',
|
||||
pp_receipt_amount = '$pp_receipt_amount',
|
||||
pp_settle_case = '$pp_settle_case',
|
||||
pp_bank_account = '$pp_bank_account',
|
||||
pp_deposit_name = '$pp_deposit_name',
|
||||
pp_receipt_time = '$pp_receipt_time',
|
||||
pp_receipt_ip = '{$_SERVER['REMOTE_ADDR']}'
|
||||
where pp_id = '{$pp['pp_id']}' ";
|
||||
$result = sql_query($sql, false);
|
||||
|
||||
// 결제정보 입력 오류시 kcp 결제 취소
|
||||
if(!$result) {
|
||||
if($tno) {
|
||||
$cancel_msg = '결제정보 입력 오류';
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; // 결제취소처리
|
||||
}
|
||||
|
||||
die("<p>$sql<p>" . mysql_errno() . " : " . mysql_error() . "<p>error file : {$_SERVER['PHP_SELF']}");
|
||||
}
|
||||
|
||||
// 주문번호가 있으면 결제정보 반영
|
||||
if($pp_receipt_amount > 0 && $pp['pp_id'] && $pp['od_id']) {
|
||||
$od_escrow = 0;
|
||||
if($escw_yn == 'Y')
|
||||
$od_escrow = 1;
|
||||
|
||||
$sql = " update {$g4['shop_order_table']}
|
||||
set od_receipt_amount = od_receipt_amount + '$pp_receipt_amount',
|
||||
od_receipt_time = '$pp_receipt_time',
|
||||
od_tno = '$pp_tno',
|
||||
od_app_no = '$app_no',
|
||||
od_escrow = '$od_escrow',
|
||||
od_settle_case = '$pp_settle_case',
|
||||
od_deposit_name = '$pp_deposit_name',
|
||||
od_bank_account = '$pp_bank_account',
|
||||
od_shop_memo = concat(od_shop_memo, \"\\n개인결제 ".$pp['pp_id']." 로 결제완료 - ".$pp_receipt_time."\")
|
||||
where od_id = '{$pp['od_id']}' ";
|
||||
$result = sql_query($sql, false);
|
||||
|
||||
// 결제정보 입력 오류시 kcp 결제 취소
|
||||
if(!$result) {
|
||||
if($tno) {
|
||||
$cancel_msg = '결제정보 입력 오류';
|
||||
include G4_MSHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; // 결제취소처리
|
||||
}
|
||||
|
||||
die("<p>$sql<p>" . mysql_errno() . " : " . mysql_error() . "<p>error file : {$_SERVER['PHP_SELF']}");
|
||||
}
|
||||
}
|
||||
|
||||
// 개인결제번호제거
|
||||
set_session('ss_personalpay_id', '');
|
||||
set_session('ss_personalpay_hash', '');
|
||||
|
||||
$uid = md5($pp['pp_id'].$pp['pp_time'].$_SERVER['REMOTE_ADDR']);
|
||||
set_session('ss_personalpay_uid', $uid);
|
||||
|
||||
goto_url(G4_SHOP_URL.'/personalpayresult.php?pp_id='.$pp['pp_id'].'&uid='.$uid);
|
||||
?>
|
||||
195
mobile/shop/personalpayresult.php
Normal file
195
mobile/shop/personalpayresult.php
Normal file
@ -0,0 +1,195 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
|
||||
$sql = "select * from {$g4['shop_personalpay_table']} where pp_id = '$pp_id' ";
|
||||
$pp = sql_fetch($sql);
|
||||
if (!$pp['pp_id'] || (md5($pp['pp_id'].$pp['pp_time'].$_SERVER['REMOTE_ADDR']) != get_session('ss_personalpay_uid'))) {
|
||||
alert("조회하실 개인결제 내역이 없습니다.", G4_SHOP_URL);
|
||||
}
|
||||
|
||||
// 결제방법
|
||||
$settle_case = $pp['pp_settle_case'];
|
||||
|
||||
$g4['title'] = '개인결제상세내역';
|
||||
include_once(G4_MSHOP_PATH.'/_head.php');
|
||||
?>
|
||||
|
||||
<div id="sod_fin">
|
||||
|
||||
<p>개인결제번호 <strong><?php echo $pp_id; ?></strong></p>
|
||||
|
||||
<div id="sod_fin_view">
|
||||
<h2>결제 정보</h2>
|
||||
<?php
|
||||
$misu = true;
|
||||
|
||||
if ($pp['pp_amount'] == $pp['pp_receipt_amount']) {
|
||||
$wanbul = " (완불)";
|
||||
$misu = false; // 미수금 없음
|
||||
}
|
||||
else
|
||||
{
|
||||
$wanbul = display_price($pp['pp_receipt_amount']);
|
||||
}
|
||||
|
||||
$misu_amount = $pp['pp_amount'] - $pp['pp_receipt_amount'];
|
||||
|
||||
// 결제정보처리
|
||||
if($pp['pp_receipt_amount'] > 0)
|
||||
$pp_receipt_amount = display_price($pp['pp_receipt_amount']);
|
||||
else
|
||||
$pp_receipt_amount = '아직 입금되지 않았거나 입금정보를 입력하지 못하였습니다.';
|
||||
|
||||
$app_no_subj = '';
|
||||
$disp_bank = true;
|
||||
$disp_receipt = false;
|
||||
if($pp['pp_settle_case'] == '신용카드') {
|
||||
$app_no_subj = '승인번호';
|
||||
$app_no = $pp['pp_app_no'];
|
||||
$disp_bank = false;
|
||||
$disp_receipt = true;
|
||||
} else if($pp['pp_settle_case'] == '휴대폰') {
|
||||
$app_no_subj = '휴대폰번호';
|
||||
$app_no = $pp['pp_bank_account'];
|
||||
$disp_bank = false;
|
||||
$disp_receipt = true;
|
||||
} else if($pp['pp_settle_case'] == '가상계좌' || $pp['pp_settle_case'] == '계좌이체') {
|
||||
$app_no_subj = 'KCP 거래번호';
|
||||
$app_no = $pp['pp_tno'];
|
||||
}
|
||||
?>
|
||||
|
||||
<section id="sod_fin_pay">
|
||||
<h3>결제정보</h3>
|
||||
|
||||
<table class="basic_tbl">
|
||||
<colgroup>
|
||||
<col class="grid_3">
|
||||
<col>
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<?php if($pp['od_id']) { ?>
|
||||
<tr>
|
||||
<th scope="row">주문번호</th>
|
||||
<td><?php echo $pp['od_id']; ?></td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
<tr>
|
||||
<th scope="row">결제방식</th>
|
||||
<td><?php echo $pp['pp_settle_case']; ?></td>
|
||||
</tr>
|
||||
<?php if($pp_receipt_amount > 0) { ?>
|
||||
<tr>
|
||||
<th scope="row">결제금액</th>
|
||||
<td><?php echo $pp_receipt_amount; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">결제일시</th>
|
||||
<td><?php echo $pp['pp_receipt_time']; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
// 승인번호, 휴대폰번호, KCP 거래번호
|
||||
if($app_no_subj)
|
||||
{
|
||||
?>
|
||||
<tr>
|
||||
<th scope="row"><?php echo $app_no_subj; ?></th>
|
||||
<td><?php echo $app_no; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
// 계좌정보
|
||||
if($disp_bank)
|
||||
{
|
||||
?>
|
||||
<tr>
|
||||
<th scope="row">입금자명</th>
|
||||
<td><?php echo $pp['pp_deposit_name']; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">입금계좌</th>
|
||||
<td><?php echo $pp['pp_bank_account']; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
if($disp_receipt) {
|
||||
?>
|
||||
<tr>
|
||||
<th scope="row">영수증</th>
|
||||
<td>
|
||||
<?php
|
||||
if($pp['pp_settle_case'] == '휴대폰')
|
||||
{
|
||||
?>
|
||||
<a href="javascript:;" onclick="window.open('https://admin.kcp.co.kr/Modules/Bill/ADSA_MCASH_N_Receipt.jsp?a_trade_no=<?php echo $pp['pp_tno']; ?>', 'winreceipt', 'width=500,height=690')">영수증 출력</a>
|
||||
<?php
|
||||
}
|
||||
|
||||
if($pp['pp_settle_case'] == '신용카드')
|
||||
{
|
||||
?>
|
||||
<a href="javascript:;" onclick="window.open('http://admin.kcp.co.kr/Modules/Sale/Card/ADSA_CARD_BILL_Receipt.jsp?c_trade_no=<?php echo $pp['pp_tno']; ?>', 'winreceipt', 'width=620,height=800')">영수증 출력</a>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<td>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<section id="sod_fin_tot">
|
||||
<h2>결제합계</h2>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
총 주문액
|
||||
<strong><?php echo display_price($pp['pp_amount']); ?></strong>
|
||||
</li>
|
||||
<?php
|
||||
if ($misu_amount > 0) {
|
||||
echo '<li>';
|
||||
echo '미결제액'.PHP_EOL;
|
||||
echo '<strong>'.display_price($misu_amount).'</strong>';
|
||||
echo '</li>';
|
||||
}
|
||||
?>
|
||||
<li id="alrdy">
|
||||
결제액
|
||||
<strong><?php echo $wanbul; ?></strong>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<?php if ($pp['pp_settle_case'] == '가상계좌' && $default['de_card_test'] && $is_admin) {
|
||||
preg_match("/(\s[^\s]+\s)/", $pp['pp_bank_account'], $matchs);
|
||||
$deposit_no = trim($matchs[1]);
|
||||
?>
|
||||
<fieldset>
|
||||
<legend>모의입금처리</legend>
|
||||
<p>관리자가 가상계좌 테스트를 한 경우에만 보입니다.</p>
|
||||
<form method="post" action="http://devadmin.kcp.co.kr/Modules/Noti/TEST_Vcnt_Noti_Proc.jsp" target="_blank">
|
||||
<input type="text" name="e_trade_no" value="<?php echo $pp['pp_tno']; ?>" size="80"><br />
|
||||
<input type="text" name="deposit_no" value="<?php echo $deposit_no; ?>" size="80"><br />
|
||||
<input type="text" name="req_name" value="<?php echo $pp['pp_deposit_name']; ?>" size="80"><br />
|
||||
<input type="text" name="noti_url" value="<?php echo G4_SHOP_URL; ?>/settle_kcp_common.php" size="80"><br /><br />
|
||||
<input type="submit" value="입금통보 테스트">
|
||||
</form>
|
||||
</fieldset>
|
||||
<?php } ?>
|
||||
|
||||
</div>
|
||||
<!-- } 개인결제상세내역 끝 -->
|
||||
|
||||
<?php
|
||||
include_once(G4_MSHOP_PATH.'/_tail.php');
|
||||
?>
|
||||
@ -47,6 +47,7 @@ include_once(G4_LIB_PATH.'/popular.lib.php');
|
||||
<?php } ?>
|
||||
<li><a href="<?php echo G4_SHOP_URL; ?>/mypage.php">마이페이지</a></li>
|
||||
<li><a href="<?php echo G4_SHOP_URL; ?>/cart.php">장바구니</a></li>
|
||||
<li><a href="<?php echo G4_SHOP_URL; ?>/personalpay.php">개인결제</a></li>
|
||||
<li><a href="<?php echo G4_URL; ?>/">커뮤니티</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
38
mobile/skin/shop/basic/personalpay.skin.php
Normal file
38
mobile/skin/shop/basic/personalpay.skin.php
Normal file
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<link rel="stylesheet" href="<?php echo G4_MSHOP_SKIN_URL; ?>/style.css">
|
||||
|
||||
<!-- 개인결제진열 시작 { -->
|
||||
<?php
|
||||
for ($i=1; $row=sql_fetch_array($result); $i++) {
|
||||
if ($list_mod >= 2) { // 1줄 이미지 : 2개 이상
|
||||
if ($i%$list_mod == 0) $sct_last = 'sct_last'; // 줄 마지막
|
||||
else if ($i%$list_mod == 1) $sct_last = 'sct_clear'; // 줄 첫번째
|
||||
else $sct_last = '';
|
||||
} else { // 1줄 이미지 : 1개
|
||||
$sct_last = 'sct_clear';
|
||||
}
|
||||
|
||||
if ($i == 1) {
|
||||
echo "<ul class=\"sct sct_10\">\n";
|
||||
}
|
||||
|
||||
$href = G4_SHOP_URL.'/personalpayform.php?pp_id='.$row['pp_id'].'&page='.$page;
|
||||
?>
|
||||
<li class="sct_li<?php echo $sct_last; ?>" style="width:<?php echo $img_width; ?>px">
|
||||
<a href="<?php echo $href; ?>" class="sct_a">
|
||||
<span class="sct_img">개인결제 이미지</span>
|
||||
<b><?php echo get_text($row['pp_name']).'님 개인결제'; ?></b>
|
||||
<span class="sct_cost"><?php echo display_price($row['pp_amount']); ?></span>
|
||||
</a>
|
||||
</li>
|
||||
<?php
|
||||
}
|
||||
|
||||
if ($i > 1) echo "</ul>\n";
|
||||
|
||||
if($i == 1) echo "<p class=\"sct_noitem\">등록된 개인결제가 없습니다.</p>\n";
|
||||
?>
|
||||
<!-- } 개인결제진열 끝 -->
|
||||
Reference in New Issue
Block a user