pc 개인결제 lg 결제 추가

This commit is contained in:
chicpro
2014-04-04 10:19:03 +09:00
parent 282b665c3e
commit f12a89b3ca
5 changed files with 154 additions and 419 deletions

View File

@ -40,7 +40,7 @@ function jsf__pay( form )
/* Payplus Plugin 실행 */
if ( MakePayMessage( form ) == true )
{
openwin = window.open( "./kcp/proc_win.html", "proc_win", "width=449, height=209, top=300, left=300" );
//openwin = window.open( "./kcp/proc_win.html", "proc_win", "width=449, height=209, top=300, left=300" );
document.getElementById("display_pay_button").style.display = "none" ;
document.getElementById("display_pay_process").style.display = "" ;
RetVal = true ;

View File

@ -26,18 +26,9 @@ $settle_case = $od['od_settle_case'];
$g5['title'] = '주문상세내역';
include_once('./_head.php');
require './settle_kcp.inc.php';
?>
<!-- 주문상세내역 시작 { -->
<script>
var openwin = window.open( './kcp/proc_win.html', 'proc_win', '' );
if(openwin != null) {
openwin.close();
}
</script>
<div id="sod_fin">
<div id="sod_fin_no">주문번호 <strong><?php echo $od_id; ?></strong></div>

View File

@ -16,332 +16,44 @@ if($pp['pp_tno'])
alert('이미 결제하신 개인결제 내역입니다.');
$g5['title'] = $pp['pp_name'].'님 개인결제';
if($default['de_pg_service'] == 'lg') {
$g5['body_script'] = 'onload="isActiveXOK();"';
}
include_once('./_head.php');
$action_url = G5_HTTPS_SHOP_URL.'/personalpayformupdate.php';
require './settle_kcp.inc.php';
// 개인결제 체크를 위한 hash
$hash_data = md5($pp['pp_id'].$pp['pp_price'].$pp['pp_time']);
set_session('ss_personalpay_id', $pp['pp_id']);
set_session('ss_personalpay_hash', $hash_data);
// 에스크로 상품정보
if($default['de_escrow_use']) {
$good_info .= "seq=1".chr(31);
$good_info .= "ordr_numb={$pp_id}_".sprintf("%04d", 1).chr(31);
$good_info .= "good_name=".addslashes($pp['pp_name'].'님 개인결제').chr(31);
$good_info .= "good_cntx=1".chr(31);
$good_info .= "good_amtx=".$pp['pp_price'].chr(31);
}
// 주문폼과 공통 사용을 위해 추가
$od_id = $pp_id;
$tot_price = $pp['pp_price'];
$goods = $pp['pp_name'].'님 개인결제';
require_once('./settle_'.$default['de_pg_service'].'.inc.php');
// 결제대행사별 코드 include (스크립트 등)
require_once('./'.$default['de_pg_service'].'/orderform.1.php');
?>
<?php
/* ============================================================================== */
/* = Javascript source Include = */
/* = -------------------------------------------------------------------------- = */
/* = ※ 필수 = */
/* = -------------------------------------------------------------------------- = */
?>
<script src="<?php echo $g_conf_js_url; ?>"></script>
<?php
/* = -------------------------------------------------------------------------- = */
/* = Javascript source Include END = */
/* ============================================================================== */
?>
<script>
function CheckPayplusInstall()
{
StartSmartUpdate();
if(ChkBrowser())
{
if(document.Payplus.object != null) {
document.getElementById("display_setup_message_top").style.display = "none" ;
document.getElementById("display_setup_message").style.display = "none" ;
document.getElementById("display_pay_button").style.display = "block" ;
}
}
else
{
setTimeout("init_pay_button();",300);
}
}
/* Payplus Plug-in 실행 */
function jsf__pay( form )
{
var RetVal = false;
/* Payplus Plugin 실행 */
if ( MakePayMessage( form ) == true )
{
openwin = window.open( "./kcp/proc_win.html", "proc_win", "width=449, height=209, top=300, left=300" );
RetVal = true ;
}
else
{
/* res_cd와 res_msg변수에 해당 오류코드와 오류메시지가 설정됩니다.
ex) 고객이 Payplus Plugin에서 취소 버튼 클릭시 res_cd=3001, res_msg=사용자 취소
값이 설정됩니다.
*/
res_cd = document.fpersonalpayform.res_cd.value ;
res_msg = document.fpersonalpayform.res_msg.value ;
}
return RetVal ;
}
// Payplus Plug-in 설치 안내
function init_pay_button()
{
if( GetPluginObject() == null ){
document.getElementById("display_setup_message_top").style.display = "block" ;
document.getElementById("display_setup_message").style.display = "block" ;
document.getElementById("display_pay_button").style.display = "none" ;
document.getElementById("display_setup_message").scrollIntoView();
}
else{
document.getElementById("display_setup_message_top").style.display = "none" ;
document.getElementById("display_setup_message").style.display = "none" ;
document.getElementById("display_pay_button").style.display = "block" ;
}
}
function get_intall_file()
{
document.location.href = GetInstallFile();
return false;
}
</script>
<!-- Payplus Plug-in 설치 안내 -->
<p id="display_setup_message_top" style="display:block">
<strong>결제안내</strong>
<span class="red">결제를 하시려면 상단의 노란색 표시줄을 클릭</span>하시거나, <a href="https://pay.kcp.co.kr/plugin_new/file/KCPPluginSetup.exe" onclick="return get_intall_file();"><span class="bold">[수동설치]</span></a>를 눌러 Payplus Plug-in을 설치하시기 바랍니다.<br>
[수동설치]를 눌러 설치하신 경우 <span class="red bold">새로고침(F5)키</span>를 눌러 진행하시기 바랍니다.
</p>
<form name="fpersonalpayform" method="post" action="<?php echo $action_url; ?>" onsubmit="return fpersonalpayform_check(this);" autocomplete="off">
<form name="forderform" id="forderform" method="post" action="<?php echo $action_url; ?>" onsubmit="return forderform_check(this);" autocomplete="off">
<input type="hidden" name="pp_id" value="<?php echo $pp['pp_id']; ?>">
<?php
/* ============================================================================== */
/* = 2. 가맹점 필수 정보 설정 = */
/* = -------------------------------------------------------------------------- = */
/* = ※ 필수 - 결제에 반드시 필요한 정보입니다. = */
/* = -------------------------------------------------------------------------- = */
// 요청종류 : 승인(pay)/취소,매입(mod) 요청시 사용
?>
<input type="hidden" name="req_tx" value="pay">
<input type="hidden" name="site_cd" value="<?php echo $default['de_kcp_mid']; ?>">
<input type="hidden" name="site_name" value="<?php echo $default['de_admin_company_name']; ?>">
<?php
/*
할부옵션 : Payplus Plug-in에서 카드결제시 최대로 표시할 할부개월 수를 설정합니다.(0 ~ 18 까지 설정 가능)
※ 주의 - 할부 선택은 결제금액이 50,000원 이상일 경우에만 가능, 50000원 미만의 금액은 일시불로만 표기됩니다
예) value 값을 "5" 로 설정했을 경우 => 카드결제시 결제창에 일시불부터 5개월까지 선택가능
*/
?>
<input type="hidden" name="pay_method" value="">
<input type="hidden" name="ordr_idxx" value="<?php echo $pp['pp_id']; ?>">
<input type="hidden" name="good_name" value="<?php echo $pp['pp_name'].'님 개인결제'; ?>">
<input type="hidden" name="good_mny" value="<?php echo $pp['pp_price']; ?>">
<input type="hidden" name="buyr_name" value="">
<input type="hidden" name="buyr_mail" value="">
<input type="hidden" name="buyr_tel1" value="">
<input type="hidden" name="buyr_tel2" 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="">
<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="quotaopt" value="12">
<!-- 필수 항목 : 결제 금액/화폐단위 -->
<input type="hidden" name="currency" value="WON">
<?php
/* = -------------------------------------------------------------------------- = */
/* = 2. 가맹점 필수 정보 설정 END = */
/* ============================================================================== */
?>
<?php
/* ============================================================================== */
/* = 3. Payplus Plugin 필수 정보(변경 불가) = */
/* = -------------------------------------------------------------------------- = */
/* = 결제에 필요한 주문 정보를 입력 및 설정합니다. = */
/* = -------------------------------------------------------------------------- = */
// 에스크로 상품정보
if($default['de_escrow_use']) {
$good_info .= "seq=1".chr(31);
$good_info .= "ordr_numb={$pp_id}_".sprintf("%04d", 1).chr(31);
$good_info .= "good_name=".addslashes($pp['pp_name'].'님 개인결제').chr(31);
$good_info .= "good_cntx=1".chr(31);
$good_info .= "good_amtx=".$pp['pp_price'].chr(31);
}
?>
<!-- PLUGIN 설정 정보입니다(변경 불가) -->
<input type="hidden" name="module_type" value="01">
<!-- 복합 포인트 결제시 넘어오는 포인트사 코드 : OK캐쉬백(SCSK), 베네피아 복지포인트(SCWB) -->
<input type="hidden" name="epnt_issu" value="">
<!--
※ 필 수
필수 항목 : Payplus Plugin에서 값을 설정하는 부분으로 반드시 포함되어야 합니다
값을 설정하지 마십시오
-->
<input type="hidden" name="res_cd" value="">
<input type="hidden" name="res_msg" value="">
<input type="hidden" name="tno" value="">
<input type="hidden" name="trace_no" value="">
<input type="hidden" name="enc_info" value="">
<input type="hidden" name="enc_data" value="">
<input type="hidden" name="ret_pay_method" value="">
<input type="hidden" name="tran_cd" value="">
<input type="hidden" name="bank_name" value="">
<input type="hidden" name="bank_issu" value="">
<input type="hidden" name="use_pay_method" value="">
<!-- 현금영수증 관련 정보 : Payplus Plugin 에서 설정하는 정보입니다 -->
<input type="hidden" name="cash_tsdtime" value="">
<input type="hidden" name="cash_yn" value="">
<input type="hidden" name="cash_authno" value="">
<input type="hidden" name="cash_tr_code" value="">
<input type="hidden" name="cash_id_info" value="">
<!-- 2012년 8월 18일 정자상거래법 개정 관련 설정 부분 -->
<!-- 제공 기간 설정 0:일회성 1:기간설정(ex 1:2012010120120131) -->
<!--
2012.08.18 부터 개정 시행되는 '전자상거래 등에서의 소비자보호에 관한 법률'에 따른 코드 변경
이용기간이 제한되는 컨텐츠 상품이나 정기 과금 상품 등에 한하여 '용역의 제공기간'을
표기/적용하여야 하며 이와 무관한 실물 배송상품 등의 결제에는 해당되지 않습니다.
0 : 일반결제
good_expr의 나머지 적용 방식에 대해서는 KCP에서 제공하는 매뉴얼을 참고해 주세요.
-->
<input type="hidden" name="good_expr" value="0">
<!-- 에스크로 항목 -->
<!-- 에스크로 사용 여부 : 반드시 Y 로 세팅 -->
<input type="hidden" name="escw_used" value="Y">
<!-- 에스크로 결제처리 모드 : 에스크로: Y, 일반: N, KCP 설정 조건: O -->
<input type="hidden" name="pay_mod" value="<?php echo ($default['de_escrow_use']?"O":"N"); ?>">
<!-- 배송 소요일 : 예상 배송 소요일을 입력 -->
<input type="hidden" name="deli_term" value="03">
<!-- 장바구니 상품 개수 : 장바구니에 담겨있는 상품의 개수를 입력 -->
<input type="hidden" name="bask_cntx" value="1">
<!-- 장바구니 상품 상세 정보 (자바 스크립트 샘플(create_goodInfo()) 참고) -->
<input type="hidden" name="good_info" value="<?php echo $good_info; ?>">
<?php
/* = -------------------------------------------------------------------------- = */
/* = 3. Payplus Plugin 필수 정보 END = */
/* ============================================================================== */
?>
<?php
/* ============================================================================== */
/* = 4. 옵션 정보 = */
/* = -------------------------------------------------------------------------- = */
/* = ※ 옵션 - 결제에 필요한 추가 옵션 정보를 입력 및 설정합니다. = */
/* = -------------------------------------------------------------------------- = */
/* PayPlus에서 보이는 신용카드사 삭제 파라미터 입니다
※ 해당 카드를 결제창에서 보이지 않게 하여 고객이 해당 카드로 결제할 수 없도록 합니다. (카드사 코드는 매뉴얼을 참고)
<input type="hidden" name="not_used_card" value="CCPH:CCSS:CCKE:CCHM:CCSH:CCLO:CCLG:CCJB:CCHN:CCCH"> */
/* 신용카드 결제시 OK캐쉬백 적립 여부를 묻는 창을 설정하는 파라미터 입니다
OK캐쉬백 포인트 가맹점의 경우에만 창이 보여집니다
<input type="hidden" name="save_ocb" value="Y"> */
/* 고정 할부 개월 수 선택
value값을 "7" 로 설정했을 경우 => 카드결제시 결제창에 할부 7개월만 선택가능
<input type="hidden" name="fix_inst" value="07"> */
/* 무이자 옵션
※ 설정할부 (가맹점 관리자 페이지에 설정 된 무이자 설정을 따른다) - "" 로 설정
※ 일반할부 (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="used_card_YN" value="Y">
/* 사용카드 설정 파라미터 입니다. (해당 카드만 결제창에 보이게 설정하는 파라미터입니다. used_card_YN 값이 Y일때 적용됩니다.
/<input type="hidden" name="used_card" value="CCBC:CCKM:CCSS">
/* 해외카드 구분하는 파라미터 입니다.(해외비자, 해외마스터, 해외JCB로 구분하여 표시)
<input type="hidden" name="used_card_CCXX" value="Y">
/* 가상계좌 은행 선택 파라미터
※ 해당 은행을 결제창에서 보이게 합니다.(은행코드는 매뉴얼을 참조) */
?>
<input type="hidden" name="wish_vbank_list" value="05:03:04:07:11:23:26:32:34:81:71">
<?php
/* 가상계좌 입금 기한 설정하는 파라미터 - 발급일 + 3일
<input type="hidden" name="vcnt_expire_term" value="3"> */
/* 가상계좌 입금 시간 설정하는 파라미터
HHMMSS형식으로 입력하시기 바랍니다
설정을 안하시는경우 기본적으로 23시59분59초가 세팅이 됩니다
<input type="hidden" name="vcnt_expire_term_time" value="120000"> */
/* 포인트 결제시 복합 결제(신용카드+포인트) 여부를 결정할 수 있습니다.- N 일경우 복합결제 사용안함
<input type="hidden" name="complex_pnt_yn" value="N"> */
/* 문화상품권 결제시 가맹점 고객 아이디 설정을 해야 합니다.(필수 설정)
<input type="hidden" name="tk_shop_id" value=""> */
/* 현금영수증 등록 창을 출력 여부를 설정하는 파라미터 입니다
※ Y : 현금영수증 등록 창 출력
※ N : 현금영수증 등록 창 출력 안함
※ 주의 : 현금영수증 사용 시 KCP 상점관리자 페이지에서 현금영수증 사용 동의를 하셔야 합니다 */
?>
<input type="hidden" name="disp_tax_yn" value="N">
<?php
/* 결제창에 가맹점 사이트의 로고를 플러그인 좌측 상단에 출력하는 파라미터 입니다
업체의 로고가 있는 URL을 정확히 입력하셔야 하며, 최대 150 X 50 미만 크기 지원
※ 주의 : 로고 용량이 150 X 50 이상일 경우 site_name 값이 표시됩니다. */
?>
<input type="hidden" name="site_logo" value="">
<?php
/* 결제창 영문 표시 파라미터 입니다. 영문을 기본으로 사용하시려면 Y로 세팅하시기 바랍니다
2010-06월 현재 신용카드와 가상계좌만 지원됩니다
<input type="hidden" name="eng_flag" value="Y"> */
?>
<?php
/* skin_indx 값은 스킨을 변경할 수 있는 파라미터이며 총 7가지가 지원됩니다.
변경을 원하시면 1부터 7까지 값을 넣어주시기 바랍니다. */
?>
<input type="hidden" name="skin_indx" value="1">
<?php
/* 상품코드 설정 파라미터 입니다.(상품권을 따로 구분하여 처리할 수 있는 옵션기능입니다.)
<input type="hidden" name="good_cd" value=""> */
/* = -------------------------------------------------------------------------- = */
/* = 4. 옵션 정보 END = */
/* ============================================================================== */
// 결제대행사별 코드 include (결제대행사 정보 필드)
require_once('./'.$default['de_pg_service'].'/orderform.2.php');
?>
<section id="sod_frm_pay">
@ -425,72 +137,22 @@ function get_intall_file()
?>
</section>
<!-- Payplus Plug-in 설치 안내 시작 { -->
<p id="display_setup_message" style="display:block">
<span class="red">결제를 계속 하시려면 상단의 노란색 표시줄을 클릭</span>하시거나 <a href="https://pay.kcp.co.kr/plugin_new/file/KCPPluginSetup.exe" onclick="return get_intall_file();"><b><u>[수동설치]</u></b></a>를 눌러 다운로드 된 Payplus Plug-in을 설치하시기 바랍니다.<br>
[수동설치]를 눌러 설치하신 경우 <span class="red bold">새로고침(F5)키</span>를 눌러 진행하시기 바랍니다.<br>
새로고침(F5) 한후에도 계속 설치파일이 다운로드 되거나 결제가 되지 않으면 브라우저를 새로 열어서 주문해 주시기 바랍니다.<br>
브라우저가 익스플로러가 아닌 경우 Payplus Plug-in 설치에 문제가 있을수 있음을 알려 드립니다.
</p>
<!-- } Payplus Plug-in 설치 안내 끝 -->
<div id="display_pay_button" class="btn_confirm" style="display:none">
<input type="submit" value="결제하기" class="btn_submit">
<a href="javascript:history.go(-1);" class="btn_cancel">취소</a>
</div>
<?php
// 결제대행사별 코드 include (주문버튼)
require_once('./'.$default['de_pg_service'].'/orderform.3.php');
?>
</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 G5_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();
<?php
if ($default['de_escrow_use']) {
// 결제대행사별 코드 include (에스크로 안내)
require_once('./'.$default['de_pg_service'].'/orderform.4.php');
}
</script>
<!-- } 에스크로 안내 끝 -->
<?php } ?>
?>
<script>
function fpersonalpayform_check(f)
function forderform_check(f)
{
var settle_case = document.getElementsByName("pp_settle_case");
var settle_check = false;
@ -540,6 +202,7 @@ function fpersonalpayform_check(f)
}
// pay_method 설정
<?php if($default['de_pg_service'] == 'kcp') { ?>
switch(settle_method)
{
case "계좌이체":
@ -558,8 +221,33 @@ function fpersonalpayform_check(f)
f.pay_method.value = "무통장";
break;
}
<?php } else if($default['de_pg_service'] == 'lg') { ?>
switch(settle_method)
{
case "계좌이체":
f.LGD_CUSTOM_FIRSTPAY.value = "SC0030";
f.LGD_CUSTOM_USABLEPAY.value = "SC0030";
break;
case "가상계좌":
f.LGD_CUSTOM_FIRSTPAY.value = "SC0040";
f.LGD_CUSTOM_USABLEPAY.value = "SC0040";
break;
case "휴대폰":
f.LGD_CUSTOM_FIRSTPAY.value = "SC0060";
f.LGD_CUSTOM_USABLEPAY.value = "SC0060";
break;
case "신용카드":
f.LGD_CUSTOM_FIRSTPAY.value = "SC0010";
f.LGD_CUSTOM_USABLEPAY.value = "SC0010";
break;
default:
f.LGD_CUSTOM_FIRSTPAY.value = "무통장";
break;
}
<?php } ?>
// kcp 결제정보설정
<?php if($default['de_pg_service'] == 'kcp') { ?>
f.buyr_name.value = f.pp_name.value;
f.buyr_mail.value = f.pp_email.value;
f.buyr_tel1.value = f.pp_hp.value;
@ -569,18 +257,34 @@ function fpersonalpayform_check(f)
f.rcvr_tel2.value = f.pp_hp.value;
f.rcvr_mail.value = f.pp_email.value;
if(jsf__pay( f )) {
return true;
if(f.pay_method.value != "무통장") {
if(jsf__pay( f )) {
return true;
} else {
return false;
}
} else {
return false;
return true;
}
<?php } if($default['de_pg_service'] == 'lg') { ?>
f.LGD_BUYER.value = f.pp_name.value;
f.LGD_BUYEREMAIL.value = f.pp_email.value;
f.LGD_BUYERPHONE.value = f.pp_hp.value;
f.LGD_AMOUNT.value = f.good_mny.value;
f.LGD_TAXFREEAMOUNT.value = 0;
if(f.LGD_CUSTOM_FIRSTPAY.value != "무통장") {
Pay_Request("<?php echo $pp_id; ?>", f.LGD_AMOUNT.value, f.LGD_TIMESTAMP.value);
} else {
f.submit();
}
<?php } ?>
}
</script>
<?php
include_once('./_tail.php');
?>
<script>
CheckPayplusInstall();
</script>
// 결제대행사별 코드 include (스크립트 실행)
require_once('./'.$default['de_pg_service'].'/orderform.5.php');
?>

View File

@ -18,31 +18,52 @@ if($_POST['pp_id'] != get_session('ss_personalpay_id') || $hash_data != get_sess
if ($pp_settle_case == "계좌이체")
{
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_result.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
$bank_name = iconv("cp949", "utf-8", $bank_name);
break;
}
$pp_tno = $tno;
$pp_receipt_price = $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_price = $amount;
}
else if ($pp_settle_case == "가상계좌")
{
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_result.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
$bankname = iconv("cp949", "utf-8", $bankname);
$depositor = iconv("cp949", "utf-8", $depositor);
break;
}
$pp_tno = $tno;
$pp_receipt_price = 0;
$bankname = iconv("cp949", "utf8", $bankname);
$depositor = iconv("cp949", "utf8", $depositor);
$pp_bank_account = $bankname.' '.$account.' '.$depositor;
$pp_bank_account = $bankname.' '.$account;
$pp_deposit_name = $depositor;
$pg_price = $amount;
}
else if ($pp_settle_case == "휴대폰")
{
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_result.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
break;
}
$pp_tno = $tno;
$pp_receipt_price = $amount;
@ -52,12 +73,19 @@ else if ($pp_settle_case == "휴대폰")
}
else if ($pp_settle_case == "신용카드")
{
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_result.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
$card_name = iconv("cp949", "utf-8", $card_name);
break;
}
$pp_tno = $tno;
$pp_receipt_price = $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_price = $amount;
}
@ -69,7 +97,14 @@ else
// 주문금액과 결제금액이 일치하는지 체크
if((int)$pp['pp_price'] !== (int)$pg_price) {
$cancel_msg = '결제금액 불일치';
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; // 결제취소처리
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
break;
}
die("Receipt Amount Error");
}
@ -89,9 +124,14 @@ $result = sql_query($sql, false);
// 결제정보 입력 오류시 kcp 결제 취소
if(!$result) {
if($tno) {
$cancel_msg = '결제정보 입력 오류';
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; // 결제취소처리
$cancel_msg = '결제정보 입력 오류';
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
break;
}
die("<p>$sql<p>" . mysql_errno() . " : " . mysql_error() . "<p>error file : {$_SERVER['PHP_SELF']}");
@ -118,9 +158,14 @@ if($pp_receipt_price > 0 && $pp['pp_id'] && $pp['od_id']) {
// 결제정보 입력 오류시 kcp 결제 취소
if(!$result) {
if($tno) {
$cancel_msg = '결제정보 입력 오류';
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; // 결제취소처리
$cancel_msg = '결제정보 입력 오류';
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
break;
}
die("<p>$sql<p>" . mysql_errno() . " : " . mysql_error() . "<p>error file : {$_SERVER['PHP_SELF']}");
@ -157,7 +202,7 @@ goto_url(G5_SHOP_URL.'/personalpayresult.php?pp_id='.$pp['pp_id'].'&amp;uid='.$u
<html>
<head>
<title>*** KCP [AX-HUB Version] ***</title>
<title>개인결제정보 기록</title>
<script>
// 결제 중 새로고침 방지 샘플 스크립트 (중복결제 방지)
function noRefresh()

View File

@ -17,18 +17,9 @@ $settle_case = $pp['pp_settle_case'];
$g5['title'] = '개인결제상세내역';
include_once('./_head.php');
require './settle_kcp.inc.php';
?>
<!-- 주문상세내역 시작 { -->
<script>
var openwin = window.open( './kcp/proc_win.html', 'proc_win', '' );
if(openwin != null) {
openwin.close();
}
</script>
<div id="sod_fin">
<p>개인결제번호 <strong><?php echo $pp_id; ?></strong></p>
@ -69,7 +60,7 @@ if(openwin != null) {
$disp_bank = false;
$disp_receipt = true;
} else if($pp['pp_settle_case'] == '가상계좌' || $pp['pp_settle_case'] == '계좌이체') {
$app_no_subj = 'KCP 거래번호';
$app_no_subj = '거래번호';
$app_no = $pp['pp_tno'];
}
?>
@ -106,7 +97,7 @@ if(openwin != null) {
<?php
}
// 승인번호, 휴대폰번호, KCP 거래번호
// 승인번호, 휴대폰번호, 거래번호
if($app_no_subj)
{
?>
@ -189,7 +180,7 @@ if(openwin != null) {
</ul>
</section>
<?php if ($pp['pp_settle_case'] == '가상계좌' && $default['de_card_test'] && $is_admin) {
<?php if ($pp['pp_settle_case'] == '가상계좌' && $default['de_card_test'] && $is_admin && $default['de_pg_service'] == 'kcp') {
preg_match("/(\s[^\s]+\s)/", $pp['pp_bank_account'], $matchs);
$deposit_no = trim($matchs[1]);
?>
@ -197,9 +188,13 @@ if(openwin != null) {
<legend>모의입금처리</legend>
<p>관리자가 가상계좌 테스트를 한 경우에만 보입니다.</p>
<form method="post" action="http://devadmin.kcp.co.kr/Modules/Noti/TEST_Vcnt_Noti_Proc.jsp" target="_blank">
<label for="e_trade_no">KCP 거래번호</label>
<input type="text" name="e_trade_no" value="<?php echo $pp['pp_tno']; ?>" size="80"><br />
<label for="deposit_no">입금계좌</label>
<input type="text" name="deposit_no" value="<?php echo $deposit_no; ?>" size="80"><br />
<label for="req_name">입금자명</label>
<input type="text" name="req_name" value="<?php echo $pp['pp_deposit_name']; ?>" size="80"><br />
<label for="noti_url">입금통보 URL</label>
<input type="text" name="noti_url" value="<?php echo G5_SHOP_URL; ?>/settle_kcp_common.php" size="80"><br /><br />
<input type="submit" value="입금통보 테스트">
</form>