일부 서버에서 문자셋 관련 결과값을 제대로 return 하지 않아 발생하는 문제로 파악됐습니다.
shop_admin/orderescrow.inc.php 파일을 아래 코드로 수정하셔서 테스트해 보시기 바랍니다.
[code]
<?php
include_once('./_common.php');
include_once(G5_SHOP_PATH.'/settle_kcp.inc.php');
// locale ko_KR.euc-kr 로 설정
setlocale(LC_CTYPE, 'ko_KR.euc-kr');
if (preg_match("/^T000/", $g_conf_site_cd) || $default['de_card_test']) {
$g_conf_gw_url = "testpaygw.kcp.co.kr";
}
else {
$g_conf_gw_url = "paygw.kcp.co.kr";
if (!preg_match("/^SR/", $g_conf_site_cd)) {
alert("SR 로 시작하지 않는 KCP SITE CODE 는 지원하지 않습니다.");
}
}
댓글 4개
에스크로로 결제고객중 배송이 완료 된후에 다시 단계가 준비로 돌아가는 경우가 생김니다,
배송정보 확인차 orderform.php 페이지 들어같다가 뒤로 버튼 누르면 가끔 아주 가끔식 이런 문제가 생기네요
shop_admin/orderescrow.inc.php 파일을 아래 코드로 수정하셔서 테스트해 보시기 바랍니다.
[code]
<?php
include_once('./_common.php');
include_once(G5_SHOP_PATH.'/settle_kcp.inc.php');
// locale ko_KR.euc-kr 로 설정
setlocale(LC_CTYPE, 'ko_KR.euc-kr');
$g_conf_site_cd = $default['de_kcp_mid'];
$g_conf_site_key = $default['de_kcp_site_key'];
$g_conf_home_dir = G5_SHOP_PATH.'/kcp';
$g_conf_key_dir = '';
$g_conf_log_dir = '';
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
{
$g_conf_key_dir = G5_SHOP_PATH.'/kcp/bin/pub.key';
$g_conf_log_dir = G5_SHOP_PATH.'/kcp/log';
}
if (preg_match("/^T000/", $g_conf_site_cd) || $default['de_card_test']) {
$g_conf_gw_url = "testpaygw.kcp.co.kr";
}
else {
$g_conf_gw_url = "paygw.kcp.co.kr";
if (!preg_match("/^SR/", $g_conf_site_cd)) {
alert("SR 로 시작하지 않는 KCP SITE CODE 는 지원하지 않습니다.");
}
}
include_once(G5_SHOP_PATH.'/kcp/pp_ax_hub_lib.php');
$req_tx = 'mod_escrow';
$mod_type = 'STE1';
$mod_desc = '에스크로 배송시작 등록';
$cust_ip = getenv('REMOTE_ADDR');
$c_PayPlus = new C_PP_CLI;
$c_PayPlus->mf_clear();
$tran_cd = "00200000";
// 에스크로 상태변경
$tno_count = count($escrow_tno);
for($i=0; $i<$tno_count; $i++) {
if(!$escrow_tno[$i] || !$escrow_corp[$i] || !$escrow_numb[$i])
continue;
$c_PayPlus->mf_set_modx_data( "tno", $escrow_tno[$i] );
$c_PayPlus->mf_set_modx_data( "mod_type", $mod_type );
$c_PayPlus->mf_set_modx_data( "mod_ip", $cust_ip );
$c_PayPlus->mf_set_modx_data( "mod_desc", $mod_desc );
$c_PayPlus->mf_set_modx_data( "deli_numb", $escrow_numb[$i] );
$c_PayPlus->mf_set_modx_data( "deli_corp", $escrow_corp[$i] );
$c_PayPlus->mf_do_tx( $trace_no, $g_conf_home_dir, $g_conf_site_cd, $g_conf_site_key, $tran_cd, "",
$g_conf_gw_url, $g_conf_gw_port, "payplus_cli_slib", $ordr_idxx,
$cust_ip, "3" , 0, 0, $g_conf_key_dir, $g_conf_log_dir); // 응답 전문 처리
$res_cd = $c_PayPlus->m_res_cd; // 결과 코드
$res_msg = $c_PayPlus->m_res_msg; // 결과 메시지
}
// locale 설정 초기화
setlocale(LC_CTYPE, '');
?>
[/code]
그리고 브라우저의 뒤로 가기 버튼으로 이동한 페이지는 브라우 캐시를 사용해 표시하기 때문에
이전 상태가 그대로 남아있을 수 있습니다. 페이지를 새로고침 하시면 정상 반영됩니다.
택배사 송장 번호나 이런것은 그대로 있구요,,
단계만 준비로 돌아가네요, 아끔 아주가끔요
신용카드나 이런 부분은 괜찬은데 에스크로 결제시에만 완료된 상품이 준비로 돌아가는 경우가 가끔 발생함니다,
증상이 재현되지 않으면 수정할 수 있는 방법이 없습니다.