1

ウェブサイトにPayPalIPNを使用しました。私のウェブサイトは複数通貨と言語で書かれています。テスト目的でPayPalIPNをサンドボックスと統合しました。米ドル通貨で支払う場合、IPN応答は検証済みであり、ステータスもpayment_status=Completedです。8検証済み0

しかし、EUR通貨でログインして支払いをしている場合、IPN応答は無効ですが、ステータスはpayment_status=Completedです。

7無効0

ここで何が問題なのかわからないので、手伝ってくれませんか。

誰かがこの解決策を知っていて、私に返信するなら、それは本当に役に立ちます。ありがとう!!!

4

1 に答える 1

0

この問題は、リスナーコードのどこかで $valid_currency が「USD」として返されることを期待しているという事実に起因していると思います。これを修正するには、支払いに受け入れるすべての有効な通貨を含む配列を作成し、mc_currency がIPN 経由で渡されると、その配列に含まれます。

$valid_currency = array("USD", "GBP", "EUR");
if(!in_array($_POST['mc_currency'], $valid_currency) {
    //Not a valid currency according to your list
} else {
    //Is a valid currency according to your list
}
于 2013-01-30T16:55:08.817 に答える