我在我的网站上使用了PayPal IPN。我的网站采用多种货币和语言。我已将PayPal IPN与沙箱集成以用于测试目的以及我所面临的情况,当我使用美元货币付款时,IPN响应已经过验证,状态也是payment_status =已完成。 8 VERIFIED 0
但是,当我使用欧元货币登录并使用当时的IPN回复付款为INVALID但状态为payment_status =已完成。
7 无效 0
我没有得到这里的问题所以请你能帮帮我吗?
如果有人知道这个解决方案并回复我,这真的很有帮助。感谢!!!
答案 0 :(得分: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
}