前提・実現したいこと
XMLの結果取得の方法が全くわからず1週間以上はまってます。
プログラマ初心者ですが、PHPでネットショップを自力で構築しました。
現在、イプシロンという決済代行会社のクレジットカード決済(リンク方式ではなくトークン方式)を導入しようとしています。
※トークン方式は、自社サイトのカート内で決済が完結する方式。リンク方式は外部サイトに飛ばされるため、カゴ落ちする可能性が高い。
イプシロン 開発者向け情報(トークン決済 送受信パラメータの仕様)
https://www.epsilon.jp/developer/spec02.html
発生している問題・エラーメッセージ
必要な情報(お客様情報や決済金額など)をPOST方式でイプシロンに送信し、なんとか決済を完了するところまでできました。
(イプシロンの管理画面で決済確認済。XMLを見ても result="1" で正常に完了)
しかし、最後の決済結果がXMLでイプシロン側の画面に表示され、それを取得する方法がいくら調べてもまったくわかりません。
決済結果を取得し、解析し、購入完了のページをお客様に表示させたいのです。
ちなみに、XMLを扱うのはまったくの初めてです。
該当のソースコード
以下、送信Formです。
<form action="https://beta.epsilon.jp/cgi-bin/order/direct_card_payment.cgi" method="post"> <input type=""text name="contract_code" value="12345678"> <input type=""text name="user_id" value="7"> <input type=""text name="user_name" value="佐藤太郎"> <input type=""text name="user_mail_add" value="mukufusa@gmail.com"> <input type=""text name="item_code" value="XXXXXX"> <input type=""text name="item_name" value="〇〇〇〇"> <input type=""text name="order_number" value="00000007"> <input type=""text name="st_code" value="11000-0000-00000"> <input type=""text name="mission_code" value="1"> <input type=""text name="item_price" value="9800"> <input type=""text name="process_code" value="1"> <input type=""text name="memo1" value="aaa"> <input type=""text name="memo2" value="aaa"> <input type=""text name="card_st_code" value="10"> <input type=""text name="pay_time" value="NULL"> <input type=""text name="tds_check_code" value="1"> <input type=""text name="keitai" value="0"> <input type=""text name="kari_flag" value="1"> <input type=""text name="security_check" value="1"> <input type=""text name="user_agent" value="XXXXX"> <input type="text" name="token" value="<?php print $token; ?>"> </form>以下、画面に表示された決済結果のXMLです。
<?xml version="1.0" encoding="x-sjis-cp932"?><Epsilon_result>
<result acsurl="" />
<result err_code="" />
<result err_detail="" />
<result kari_flag="1" />
<result pareq="" />
<result result="1" />
<result trans_code="1068179" />
</Epsilon_result>
試したこと
XMLについて基本的なところを調べましたが、XMLファイル(.xml)に直接アクセスして内容を取得する方法が書かれたページが多く「 simplexml_load_file() 」、今回のケースのようにCGIに対して値を送信しその結果として表示されたXMLを取得する方法についてはいくら探しても見つけることができませんでした。サポートに質問しても「XMLの処理については案内できない」とのことでした。
初歩的な質問かもしれませんが、自力では解決方法が見つけられなかったため、何卒よろしくお願いいたします。
補足情報
以下、サポートより頂いた回答になります。
弊社から送信されたxmlを貴サイト側にて解析・処理いただくことで
購入者様の画面へ決済完了画面を表示していただく仕様となっております。
なお、貴サイト側での解析方法等につきましては
貴社環境に依存するため、恐れ入りますが
弊社より具体的なご案内はできかねますことをご了承ください。
回答2件
あなたの回答
tips
プレビュー