제목 | kcp 모바일 결제 모듈 설치중에 undefine error가 납니다. | ||
---|---|---|---|
글쓴이 | 료단 | 작성시각 | 2015/07/08 10:26:47 |
|
|||
카드 결제중에 isp 인증후 결과 받는 페이지를 아래 소스 처럼해서 연결 했는데 일단 결제 모듈에서 성공 메시지는 출력이 되는데 아래 소스 실행 부분에서 $trace_no, my_data 등이 undefine 에러가 뜨는 현상이 생기는데 혹시 아시는분 계실가 해서 남겨 봅니다. 실행 부분 결과 코드값은 0000 정상 처리는 되었다고 나오는데 저렇게 에러가 뜨니 찾기가 쉽지 않네요 혹시 아시는분 계시면 답변 부탁드립니다. require(BASEPATH.'libraries/pp_cli_hub_lib.php'); if ( $_SERVER['REQUEST_METHOD'] != "POST" ) { echo("잘못된 경로로 접속하였습니다."); exit; } /* ============================================================================== */ /* = 01. 지불 요청 정보 설정 = */ /* = -------------------------------------------------------------------------- = */ $req_tx = $this->input->post( "req_tx" ); // 요청 종류 $tran_cd = $this->input->post( "tran_cd" ); // 처리 종류 /* = -------------------------------------------------------------------------- = */ $cust_ip = getenv( "REMOTE_ADDR" ); // 요청 IP $ordr_idxx = $this->input->post( "ordr_idxx" ); // 쇼핑몰 주문번호 $good_name = $this->input->post( "good_name" ); // 상품명 $good_mny = $this->input->post( "good_mny" ); // 결제 총금액 /* = -------------------------------------------------------------------------- = */ $res_cd = ""; // 응답코드 $res_msg = ""; // 응답메시지 $tno = $this->input->post( "tno" ); // KCP 거래 고유 번호 /* = -------------------------------------------------------------------------- = */ $buyr_name = $this->input->post( "buyr_name" ); // 주문자명 $buyr_tel1 = $this->input->post( "buyr_tel1" ); // 주문자 전화번호 $buyr_tel2 = $this->input->post( "buyr_tel2" ); // 주문자 핸드폰 번호 $buyr_mail = $this->input->post( "buyr_mail" ); // 주문자 E-mail 주소 /* = -------------------------------------------------------------------------- = */ $use_pay_method = $this->input->post( "use_pay_method" ); // 결제 방법 $bSucc = ""; // 업체 DB 처리 성공 여부 /* = -------------------------------------------------------------------------- = */ $app_time = ""; // 승인시간 (모든 결제 수단 공통) $amount = ""; // KCP 실제 거래 금액 /* = -------------------------------------------------------------------------- = */ $card_cd = ""; // 신용카드 코드 $card_name = ""; // 신용카드 명 $app_no = ""; // 신용카드 승인번호 $noinf = ""; // 신용카드 무이자 여부 $quota = ""; // 신용카드 할부개월 $partcanc_yn = ""; // 부분취소 가능유무 $card_bin_type_01 = ""; // 카드구분1 $card_bin_type_02 = ""; // 카드구분2 /* = -------------------------------------------------------------------------- = */ $bank_name = ""; // 은행명 $bank_code = ""; // 은행코드 /* = -------------------------------------------------------------------------- = */ $bankname = ""; // 입금할 은행명 $depositor = ""; // 입금할 계좌 예금주 성명 $account = ""; // 입금할 계좌 번호 $va_date = ""; // 가상계좌 입금마감시간 /* = -------------------------------------------------------------------------- = */ $pnt_issue = ""; // 결제 포인트사 코드 $pnt_amount = ""; // 적립금액 or 사용금액 $pnt_app_time = ""; // 승인시간 $pnt_app_no = ""; // 승인번호 $add_pnt = ""; // 발생 포인트 $use_pnt = ""; // 사용가능 포인트 $rsv_pnt = ""; // 적립 포인트 /* = -------------------------------------------------------------------------- = */ $commid = ""; // 통신사 코드 $mobile_no = ""; // 휴대폰 번호 $van_cd = ""; /* = -------------------------------------------------------------------------- = */ $tk_van_code = ""; // 발급사 코드 $tk_app_no = ""; // 상품권 승인 번호 /* = -------------------------------------------------------------------------- = */ $cash_yn = $this->input->post( "cash_yn" ); // 현금영수증 등록 여부 $cash_authno = ""; // 현금 영수증 승인 번호 $cash_tr_code = $this->input->post( "cash_tr_code" ); // 현금 영수증 발행 구분 $cash_id_info = $this->input->post( "cash_id_info" ); // 현금 영수증 등록 번호 $param_opt_1 = $this->input->post( "param_opt_1" ); $param_opt_2 = $this->input->post( "param_opt_2" ); $param_opt_3 = $this->input->post( "param_opt_3" ); $trace_no = ""; $c_PayPlus = new C_PP_CLI; $c_PayPlus->mf_clear(); /* = -------------------------------------------------------------------------- = */ /* = 03-1. 승인 요청 = */ /* = -------------------------------------------------------------------------- = */ if ( $req_tx == "pay" ) { /* 1004원은 실제로 업체에서 결제하셔야 될 원 금액을 넣어주셔야 합니다. 결제금액 유효성 검증 */ /* $c_PayPlus->mf_set_ordr_data( "ordr_mony", "1004" ); */ $c_PayPlus->mf_set_encx_data( $this->input->post( "enc_data" ), $this->input->post( "enc_info" ) ); } /* ============================================================================== */ /* = 04. 실행 = */ /* = -------------------------------------------------------------------------- = */ if ( $tran_cd != "" ) { $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, g_conf_log_level, 0, 0, g_conf_log_path ); // 응답 전문 처리 $res_cd = $c_PayPlus->m_res_cd; // 결과 코드 $res_msg = $c_PayPlus->m_res_msg; // 결과 메시지 } else { $c_PayPlus->m_res_cd = "9562"; $c_PayPlus->m_res_msg = "연동 오류|tran_cd값이 설정되지 않았습니다."; } print_r("res_cd = ".$res_cd." res_msg=". $res_msg . "g_conf_home_dir=".g_conf_home_dir."param_opt_3==".$param_opt_3); /* ============================================================================== */ /* = 05. 승인 결과 값 추출 = */ /* = -------------------------------------------------------------------------- = */ if ( $req_tx == "pay" ) { if( $res_cd == "0000" ) { $tno = $c_PayPlus->mf_get_res_data( "tno" ); // KCP 거래 고유 번호 $amount = $c_PayPlus->mf_get_res_data( "amount" ); // KCP 실제 거래 금액 $app_time = $c_PayPlus->mf_get_res_data( "app_time" ); // 승인시간 $pnt_issue = $c_PayPlus->mf_get_res_data( "pnt_issue" ); // 결제 포인트사 코드 /* = -------------------------------------------------------------------------- = */ /* = 05-1. 신용카드 승인 결과 처리 = */ /* = -------------------------------------------------------------------------- = */ if ( $use_pay_method == "100000000000" ) { $card_cd = $c_PayPlus->mf_get_res_data( "card_cd" ); // 카드사 코드 $card_name = $c_PayPlus->mf_get_res_data( "card_name" ); // 카드 종류 $app_no = $c_PayPlus->mf_get_res_data( "app_no" ); // 승인 번호 $noinf = $c_PayPlus->mf_get_res_data( "noinf" ); // 무이자 여부 ( 'Y' : 무이자 ) $quota = $c_PayPlus->mf_get_res_data( "quota" ); // 할부 개월 수 $partcanc_yn = $c_PayPlus->mf_get_res_data( "partcanc_yn" ); // 부분취소 가능유무 } /* = -------------------------------------------------------------------------- = */ /* = 05-7. 현금영수증 결과 처리 = */ /* = -------------------------------------------------------------------------- = */ //$cash_authno = $c_PayPlus->mf_get_res_data( "cash_authno" ); // 현금 영수증 승인 번호 } } /* = -------------------------------------------------------------------------- = */ /* = 05. 승인 결과 처리 END = */ /* ============================================================================== */ /* ============================================================================== */ /* = 06. 승인 및 실패 결과 DB처리 = */ /* = -------------------------------------------------------------------------- = */ /* = 결과를 업체 자체적으로 DB처리 작업하시는 부분입니다. = */ /* = -------------------------------------------------------------------------- = */ if ( $req_tx == "pay" ) { if( $res_cd == "0000" ) { // 06-1-1. 신용카드 if ( $use_pay_method == "100000000000" ) { //alert("신용카드 결제 완료"); } // 06-1-2. 계좌이체 if ( $use_pay_method == "010000000000" ) { } // 06-1-3. 가상계좌 if ( $use_pay_method == "001000000000" ) { } // 06-1-4. 포인트 if ( $use_pay_method == "000100000000" ) { } // 06-1-5. 휴대폰 if ( $use_pay_method == "000010000000" ) { } // 06-1-6. 상품권 if ( $use_pay_method == "000000001000" ) { } } /* = -------------------------------------------------------------------------- = */ /* = 06. 승인 및 실패 결과 DB처리 = */ /* ============================================================================== */ else if ( $res_cd != "0000" ) { alert("승인 실패처리"); } } /* ============================================================================== */ /* = 07. 승인 결과 DB처리 실패시 : 자동취소 = */ /* = -------------------------------------------------------------------------- = */ /* = 승인 결과를 DB 작업 하는 과정에서 정상적으로 승인된 건에 대해 = */ /* = DB 작업을 실패하여 DB update 가 완료되지 않은 경우, 자동으로 = */ /* = 승인 취소 요청을 하는 프로세스가 구성되어 있습니다. = */ /* = = */ /* = DB 작업이 실패 한 경우, bSucc 라는 변수(String)의 값을 "false" = */ /* = 로 설정해 주시기 바랍니다. (DB 작업 성공의 경우에는 "false" 이외의 = */ /* = 값을 설정하시면 됩니다.) = */ /* = -------------------------------------------------------------------------- = */ $bSucc = "true"; // DB 작업 실패 또는 금액 불일치의 경우 "false" 로 세팅 print_r("req_tx = ".$req_tx." req_cd = ". $res_cd . "use_pay_method=" . $use_pay_method . "\n"); /* = -------------------------------------------------------------------------- = */ /* = 07-1. DB 작업 실패일 경우 자동 승인 취소 = */ /* = -------------------------------------------------------------------------- = */ if ( $req_tx == "pay" ) { if( $res_cd == "0000" ) { if ( $bSucc == "false" ) { $c_PayPlus->mf_clear(); $tran_cd = "00200000"; $c_PayPlus->mf_set_modx_data( "tno", $tno ); // KCP 원거래 거래번호 $c_PayPlus->mf_set_modx_data( "mod_type", "STSC" ); // 원거래 변경 요청 종류 $c_PayPlus->mf_set_modx_data( "mod_ip", $cust_ip ); // 변경 요청자 IP $c_PayPlus->mf_set_modx_data( "mod_desc", "결과 처리 오류 - 자동 취소" ); // 변경 사유 print_r("req_tx = ".$req_tx." req_cd = ". $res_cd . "use_pay_method=" . $use_pay_method . "\n"); $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, g_conf_log_level, 0, 0, g_conf_log_path ); // 응답 전문 처리 $res_cd = $c_PayPlus->m_res_cd; $res_msg = $c_PayPlus->m_res_msg; } } } // End of [res_cd = "0000"] /* ============================================================================== */ $data = array( 'site_cd' => g_conf_site_cd, 'req_tx' => $req_tx, 'use_pay_method' => $use_pay_method, 'bSucc' => $bSucc, 'res_cd' => $res_cd, 'res_msg' => $res_msg, 'ordr_idxx' => $ordr_idxx, 'tno' => $tno, 'good_mny' => $good_mny, 'good_name' => $good_name, 'buyr_name' => $buyr_name, 'buyr_tel1' => $buyr_tel1, 'buyr_tel2' => $buyr_tel2, 'buyr_mail' => $buyr_mail, 'app_time' => $app_time, 'card_cd' => $card_cd, 'card_name' => $card_name, 'app_no' => $app_no, 'noinf' => $noinf, 'quota' => $quota, 'partcanc_yn' => $partcanc_yn, 'card_bin_type_01' => $card_bin_type_01, 'card_bin_type_02' => $card_bin_type_02, 'bank_name' => $bank_name, 'bank_code' => $bank_code, 'bankname' => $bankname, 'depositor' => $depositor, 'account' => $account, 'va_date' => $va_date, 'pnt_issue' => $pnt_issue, 'pnt_app_time' => $pnt_app_time, 'pnt_app_no' => $pnt_app_no, 'pnt_amount' => $pnt_amount, 'add_pnt' => $add_pnt, 'use_pnt' => $use_pnt, 'rsv_pnt' => $rsv_pnt, 'commid' => $commid, 'mobile_no' => $mobile_no, 'van_cd' => $van_cd, 'amount' => $amount, 'tk_van_code' => $tk_van_code, 'tk_app_no' => $tk_app_no, 'cash_yn' => $cash_yn, 'cash_authno' => $cash_authno, 'cash_tr_code' => $cash_tr_code, 'cash_id_info' => $cash_id_info, 'param_opt_1' => $param_opt_1, 'param_opt_2' => $param_opt_2, 'param_opt_3' => $param_opt_3 ); $this->load->view("_head"); $this->load->view("article/pp_cli_hub",$data); $this->load->view("_footer"); |
|||
다음글 | ci session이 브라우저 close할 때 자동으로... (1) | ||
이전글 | 부트스트랩 navbar 모바일 메뉴 에러 질문 (1) | ||
료단
/
2015/07/08 10:55:18 /
추천
0
|
한대승(불의회상)
/
2015/07/08 10:59:41 /
추천
0
g_conf_site_cd 가 상수가 아니라면 $g_conf_site_cd 로 하셔야 할 것 같은데요.
|
모바일 브라우저에선 정상적인데
앱에 웹뷰안에 들어가면 거기서 그런 문제가 나오네요 ...