올더게이트에서 ISP 결제시 복호화 오류 원인과 해결방법 정보
올더게이트에서 ISP 결제시 복호화 오류 원인과 해결방법본문
올더게이트에서 ISP 결제시에서만 발생하는 오류입니다.
복호화 오류 발생원인
영카트5의 common.php 파일내에서 $_POST 값에 대해서
// mysql_real_escape_string 적용
$_POST = array_map_deep(G5_ESCAPE_FUNCTION, $_POST);
이 문구로 인해 $_POST 값 내의 줄바꿈을 \r\n 으로 치환하기 때문입니다.
올더게이트측 모듈에서 무책임한면이 없지 않아 있습니다.
AGS_pay_ing.php 파일내
$agspay->SetValue("KVP_SESSIONKEY",$_POST["KVP_SESSIONKEY"]); //KVP_SESSIONKEY
결제가 완료된 후에 카드정보를 받아 오는 부분에
$_POST["KVP_SESSIONKEY"] 이 변수가 단순 한줄 변수가 아닌,
텍스트박스 변수로서 날라오기 때문에 이러한 문제가 생긴 것입니다.
결제 전에도 textarea가 아닌 input으로 변수빈값을 지정하고 있는것 또한 문제입니다.
이 문제가 나타나는 분들은 아마도
AGS_pay_ing.php 이 파일 상단에 common.php 파일을 인클루드 하는 부분이 있을겁니다.
큰 문제가 없다면 인클루드하는 부분을 제거해주세요.
아래 다른 님께서 남겨주신 이렇게 변경하셔도 괜찮지만,
변경 전 : $agspay->SetValue("KVP_SESSIONKEY",$_POST["KVP_SESSIONKEY"]);
변경 후 : $agspay->SetValue("KVP_SESSIONKEY",str_replace('\r\n', PHP_EOL, $_POST["KVP_SESSIONKEY"]));
이 부분을 이렇게 변경해도 되는것인지는 아직 올더게이트쪽에서 확인하지 않았다고 합니다.
복호화 오류 발생원인
영카트5의 common.php 파일내에서 $_POST 값에 대해서
// mysql_real_escape_string 적용
$_POST = array_map_deep(G5_ESCAPE_FUNCTION, $_POST);
이 문구로 인해 $_POST 값 내의 줄바꿈을 \r\n 으로 치환하기 때문입니다.
올더게이트측 모듈에서 무책임한면이 없지 않아 있습니다.
AGS_pay_ing.php 파일내
$agspay->SetValue("KVP_SESSIONKEY",$_POST["KVP_SESSIONKEY"]); //KVP_SESSIONKEY
결제가 완료된 후에 카드정보를 받아 오는 부분에
$_POST["KVP_SESSIONKEY"] 이 변수가 단순 한줄 변수가 아닌,
텍스트박스 변수로서 날라오기 때문에 이러한 문제가 생긴 것입니다.
결제 전에도 textarea가 아닌 input으로 변수빈값을 지정하고 있는것 또한 문제입니다.
이 문제가 나타나는 분들은 아마도
AGS_pay_ing.php 이 파일 상단에 common.php 파일을 인클루드 하는 부분이 있을겁니다.
큰 문제가 없다면 인클루드하는 부분을 제거해주세요.
아래 다른 님께서 남겨주신 이렇게 변경하셔도 괜찮지만,
변경 전 : $agspay->SetValue("KVP_SESSIONKEY",$_POST["KVP_SESSIONKEY"]);
변경 후 : $agspay->SetValue("KVP_SESSIONKEY",str_replace('\r\n', PHP_EOL, $_POST["KVP_SESSIONKEY"]));
이 부분을 이렇게 변경해도 되는것인지는 아직 올더게이트쪽에서 확인하지 않았다고 합니다.
추천
1
1
댓글 1개
좋은 정보 감사합니다.