이니시스 모바일 결제시 결과 리턴 내용 질문드립니다.
본문
안녕하세요.
이니시스 결제를 이용해 결제를 했을때
PC에서는 카드코드와 카드번호 할부개월수가 리턴이되어 넘어오는데
모바일에서는 어떻게 넘겨받는지 도무지 모르겠습니다;;;;;
일단 /mobile/shop/settle_common.php에
// 이니시스 NOTI 서버에서 받은 Value
$P_TID; // 거래번호
$P_MID; // 상점아이디
$P_AUTH_DT; // 승인일자
$P_STATUS; // 거래상태 (00:성공, 01:실패)
$P_TYPE; // 지불수단
$P_OID; // 상점주문번호
$P_FN_CD1; // 금융사코드1
$P_FN_CD2; // 금융사코드2
$P_FN_NM; // 금융사명 (은행명, 카드사명, 이통사명)
$P_AMT; // 거래금액
$P_UNAME; // 결제고객성명
$P_RMESG1; // 결과코드
$P_RMESG2; // 결과메시지
$P_NOTI; // 노티메시지(상점에서 올린 메시지)
$P_AUTH_NO; // 승인번호
$P_SRC_CODE; // 앱연동 결제구분
$P_CARD_NUM; //카드번호 <<=== 추가
$P_RMESG2; //할부기간 <==== 추가
$P_TID = isset($_POST['P_TID']) ? $_POST['P_TID'] : '';
$P_MID = isset($_POST['P_MID']) ? $_POST['P_MID'] : '';
$P_AUTH_DT = isset($_POST['P_AUTH_DT']) ? $_POST['P_AUTH_DT'] : '';
$P_STATUS = isset($_POST['P_STATUS']) ? $_POST['P_STATUS'] : '';
$P_TYPE = isset($_POST['P_TYPE']) ? $_POST['P_TYPE'] : '';
$P_OID = isset($_POST['P_OID']) ? preg_replace("/[ #\&\+%@=\/\\\:;,\.'\"\^`~|\!\?\*$#<>()\[\]\{\}]/i", "", $_POST['P_OID']) : '';
$P_FN_CD1 = isset($_POST['P_FN_CD1']) ? $_POST['P_FN_CD1'] : '';
$P_FN_CD2 = isset($_POST['P_FN_CD2']) ? $_POST['P_FN_CD2'] : '';
$P_FN_NM = isset($_POST['P_FN_NM']) ? $_POST['P_FN_NM'] : '';
$P_AMT = isset($_POST['P_AMT']) ? $_POST['P_AMT'] : '';
$P_UNAME = isset($_POST['P_UNAME']) ? $_POST['P_UNAME'] : '';
$P_RMESG1 = isset($_POST['P_RMESG1']) ? $_POST['P_RMESG1'] : '';
$P_RMESG2 = isset($_POST['P_RMESG2']) ? $_POST['P_RMESG2'] : '';
$P_NOTI = isset($_POST['P_NOTI']) ? $_POST['P_NOTI'] : '';
$P_AUTH_NO = isset($_POST['P_AUTH_NO']) ? $_POST['P_AUTH_NO'] : '';
$P_SRC_CODE = isset($_POST['P_SRC_CODE']) ? $_POST['P_SRC_CODE'] : '';
$P_CARD_NUM = isset($_POST['P_CARD_NUM']) ? $_POST['P_CARD_NUM'] : ''; <===추가
$P_RMESG2 = isset($_POST['P_RMESG2']) ? $_POST['P_RMESG2'] : ''; <===추가
이렇게 추가하고 아래부분에
$PAY = array(
'oid' => $P_OID,
'P_TID' => $P_TID,
'P_MID' => $P_MID,
'P_AUTH_DT' => $P_AUTH_DT,
'P_STATUS' => $P_STATUS,
'P_TYPE' => $P_TYPE,
'P_OID' => $P_OID,
'P_FN_NM' => iconv_utf8($P_FN_NM),
'P_AUTH_NO' => $P_AUTH_NO,
'P_AMT' => $P_AMT,
'P_RMESG1' => iconv_utf8($P_RMESG1).
'P_FN_CD1' => $P_FN_CD1.
'P_CARD_NUM' => $P_CARD_NUM. <=== 추가
'P_RMESG2' => $P_RMESG2. <=== 추가
);
$value = array(
"PageCall time" => $PageCall_time,
"P_TID" => $P_TID,
"P_MID" => $P_MID,
"P_AUTH_DT" => $P_AUTH_DT,
"P_STATUS" => $P_STATUS,
"P_TYPE" => $P_TYPE,
"P_OID" => $P_OID,
"P_FN_CD1" => $P_FN_CD1,
"P_FN_CD2" => $P_FN_CD2,
"P_FN_NM" => $P_FN_NM,
"P_AMT" => $P_AMT,
"P_UNAME" => $P_UNAME,
"P_RMESG1" => $P_RMESG1,
"P_RMESG2" => $P_RMESG2,
"P_NOTI" => $P_NOTI,
"P_AUTH_NO" => $P_AUTH_NO,
"P_SRC_CODE" => $P_SRC_CODE,
"P_CARD_NUM" => $P_CARD_NUM, <===추가
"P_RMESG2" => $P_RMESG2 <===추가
);
이렇게 넣어줬습니다.
그리고 pay_return.php에
echo '<input type="hidden" name="P_FN_CD1" value="'.$PAY['P_FN_CD1'].'">'.PHP_EOL;
echo '<input type="hidden" name="P_CARD_NUM" value="'.$PAY['P_CARD_NUM'].'">'.PHP_EOL;
echo '<input type="hidden" name="P_RMESG2" value="'.$PAY['P_RMESG2'].'">'.PHP_EOL;
이거 세줄 추가해줬구요;;;
그리고 pay_result.php에
//최종결제요청 결과 성공 DB처리 <<==이 부분 맨 아래
$card_code = isset($_POST['P_FN_CD1']) ? $_POST['P_FN_CD1'] : '';
$card_number = isset($_POST['P_CARD_NUM']) ? $_POST['P_CARD_NUM'] : '';
$CARD_Quota = isset($_POST['P_RMESG2']) ? $_POST['P_RMESG2'] : '';
이거 세줄 추가해줬습니다.
뭘 어디에 추가해야 될 지 몰라서 의심되는 부분에 무작정 추가하니까 안되네요;;;;;ㅠㅠ
이니시스 모바일 결제시에 카드사 코드와 신용카드번호, 할부기간 리턴 받아서 orderformupdate.php에 사용하려면
어떻게 해야되나요;;;; 제발 좀 도와주세요ㅠㅠㅠㅠㅠㅠ
답변 1
$g5['g5_shop_order_table'] 디비에 3개의 칼럼을 생성하고
card_code
card_number
CARD_Quota
insert {$g5['g5_shop_order_table']} set
이 부분에 적용을 아래의 내용을 추가해 줘야 할 것입니다.
card_code = '$card_code',
card_number = '$card_number',
CARD_Quota = '$CARD_Quota',
................