영카트 모바일 결제시 Error. 메세지 Order_data db 저장이 안되요.
본문
/mobile/shop/orderupdateform.php
에서 여러가지 테스트를 해 본 결과
Post 값들이 안 넘어옵니다 ㅠ
그래서
/mobile/shop/orderform.sub.php 에서
$i_price 값이 0이더라구요
그래서 값을 전부 출력해봤는데
$_POST['od_price']이 안 넘어오고 있습니다.
그래서
/mobile/shop/orderform.sub.php 에서
<input type="hidden" name="od_price" value="<?php echo $tot_sell_price; ?>">
이 부분도 확인해봤는데 데이타가 정상적입니다.
영카트 모바일의 경우 orderform 에서 orderformupdate 사이에 추가적인 과정이 있음을
검색해서 알게되었습니다.
주문폼에서 결제등록요청을 하면
order_data 테이블에 현재 주문폼에
구매자가 입력한 값을 임시로 저장한 후
결제등록 완료 후
kcp에서 order_approval_form.php 파일을 호출하면
이 파일에서 임시로 저장해둔 order_data 테이블의 데이터를
가져와서 orderformupdate.php 로 submit 합니다.
라는 코멘트를 찾았습니다.
post 데이터가 없다는 것이 의미하는 것은
order_data 테이블 자체가 없거나 폼의 데이터가 저장되지 않는 다는 것
db schema는 있는 상황
그럼 결론, 어떠한 방법으로 인해
form 데이터가 db로 저장되지 못하고
그걸 $_post 값으로 못 불러오는 상황
여기서 모르겠으요. 크하하 ㅠ
혹시 보안서버인증서가 없으면 저렇게 될 수도 있을까요
해결책을 알고 계신 고수님들의 손길을 기다립니다 ㅠ
답변 4
request 값이 안넘어오는것이 당연히 ssl 하고 관련이 있습니다.
ssl 을 적용해야 문제가 해결됩니다.
아래 링크의 정책으로 인해, api나 결제 등을 이용할시 이제는 반드시 ssl 을 적용해야 합니다.
https://developers.google.com/search/blog/2020/01/get-ready-for-new-samesitenone-secure?hl=ko
order_data 주문시 임시 저장테이블인데 위 정보를 PG사 리턴 받아 처리후에 formdata를 만들어서 처리해 주어야 하는데 그 부분이 적용이 된건지 확인을 해보셔야 할듯 합니다.
인증서하고는 상관없습니다. 현재 불러오는게 문제가아니구 디비에 저장을 못하고잇다면 ...
연결문제는 아닐테고, 권한문제가 있을수잇으니 제일먼저체크하시구요,
그리고 해당 폼처리부분에서 오류내용을 확인해주시기바랍니다.