如何检查 paypal ipn 响应(用于保护黑客)?
现在我使用此代码进行检查
if (!isset($_POST["txn_id"]) && !isset($_POST["txn_type"]))
{ //user press paypal button// }
else
{ // paypal ipn response and insert data to mysql// }
但我认为这个代码不安全,因为如果用户在 paypal 按钮表单中创建假 $_POST[txn_id]
和 $_POST[txn_type]
我的代码将转到向mysql插入数据。
请帮助我创建可以保护黑客的代码。
谢谢^^
最佳答案
查看 IPN solution PayPal provides 。它为您处理所有这一切。我只是将其融入其中。
如果您查看该脚本,您将看到它如何解析 POST 到它的数据,然后重新生成 NVP 字符串以使用 CURL 直接 POST 回 PayPal。对该请求的响应将包含 VERIFIED 或 INVALID,并且您可以据此相应地处理 IPN。
同样,该模板会为您完成所有操作,因此您只需从第 105 行开始,其中包含用于判断 IPN 是否经过验证的 if/then 逻辑。
关于php - 如何检查 paypal iPN 是否响应(用于保护黑客)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24387478/