kcp 모바일 신용카드 결제가 안되요
본문
안녕하세요
질문하나 드립니다.
모바일에서 신용카드 결제시 결제 마지막 결제확인 단계에서 결제요청을 들어가면 하얀 백색화면이 뜨면서 결제가 되지 않습니다.
이에 대한 해결 방법이 있을까요?
아래는 kcp에다가 문의내용을 올렸을때의 답변 내용 입니다.
안녕하세요, 기술지원팀입니다.
문의주신 내용에 대해서 답변드립니다.
스마트폰 결제가 진행되는 프로세스를 말씀드리자면
order > kcp결제창 > order(ret_url) > pp_cli_hub > result 로 진행이 됩니다.
알려주신 계정으로 테스트를 해봤을 때 ret_url로 인증데이터(enc_info, enc_data) 는 모두 정상적으로 내려갔으나,그 다음 hub페이지로 값을 넘겨
결과처리(승인or 거절)가 진행이 되지 않는것으로 예상됩니다.
솔루션 업체측을 통해서 확인요청해주시기 바랍니다.
감사합니다.
에러 문구가 .htaccess 파일을 수정하여 에러 로그를 나오게 하니 이렇게 나오는데요
Fatal error: Call to undefined function make_order_field() in /home/hosting_users/miappeal/www/mobile/shop/kcp/order_approval_form.php on line 231
그 부분을 확인을 해보니
<?php
if($enc_data != '' && $enc_info != '' && $tran_cd != '') {
// 제외할 필드
$exclude = array('req_tx', 'res_cd', 'tran_cd', 'ordr_idxx', 'good_mny', 'good_name', 'buyr_name', 'buyr_tel1', 'buyr_tel2', 'buyr_mail', 'enc_info', 'enc_data', 'use_pay_method', 'rcvr_name', 'rcvr_tel1', 'rcvr_tel2', 'rcvr_mail', 'rcvr_zipx', 'rcvr_add1', 'rcvr_add2', 'param_opt_1', 'param_opt_2', 'param_opt_3');
$sql = " select * from {$g5['g5_shop_order_data_table']} where od_id = '$ordr_idxx' ";
$row = sql_fetch($sql);
$data = unserialize($row['dt_data']);
if(isset($data['pp_id']) && $data['pp_id']) {
$order_action_url = G5_HTTPS_MSHOP_URL.'/personalpayformupdate.php';
} else {
$order_action_url = G5_HTTPS_MSHOP_URL.'/orderformupdate.php';
}
echo '<form name="forderform" method="post" action="'.$order_action_url.'" autocomplete="off">'.PHP_EOL;
echo make_order_field($data, $exclude); <---- 요부분
foreach($_POST as $key=>$value) {
echo '<input type="hidden" name="'.$key.'" value="'.$value.'">'.PHP_EOL;
}
echo '</form>'.PHP_EOL;
}
?>
주석처리하면 그냥 에러가 되버리고 어떤게 문제일까요??
답변 2
make_order_field 함수는 lib/shop.lib.php 파일에 있습니다.
패치를 하시면서 제대로 패치를 완료하지 않아서 발생하는 문제로 보입니다.
편리님 대단히 감사합니다.
편리님이 말씀하신대로 shop.lip.php 에 함수가 누락 되어있더군요
그런데 이제는 orderformupdate.php 에서
"Error."
이라는 에러가 뜨는군요
죄송스럽지만 한번더 알려 주심 감사 하겠습니다.