【发布时间】:2011-08-25 22:35:05
【问题描述】:
我正在尝试制作一个与 MySQL 交互的 PHP 应用程序。 我已经有一个获取 POST 数据的页面,在它获取之后,它给用户“信用”。 成功下单后的 PayPal 按钮可以给我发送一个 post 数据吗? 还是有其他方法? (很可能更简单、更安全)
【问题讨论】:
我正在尝试制作一个与 MySQL 交互的 PHP 应用程序。 我已经有一个获取 POST 数据的页面,在它获取之后,它给用户“信用”。 成功下单后的 PayPal 按钮可以给我发送一个 post 数据吗? 还是有其他方法? (很可能更简单、更安全)
【问题讨论】:
是的,请查看 PayPal 即时付款通知 (IPN) - https://www.paypal.com/ipn/
这将强制在发起交易时向您发送交易数据的 POST。如果您当前使用网站支付标准(基于 HTML 的按钮),您可以简单地添加
<input type="hidden" name="notify_url" value="http://full-URL-to-the-script-you-set-up-for-IPN">
您需要获取您从 PayPal 收到的所有 POST 数据,附加 cmd=_notify-validate 并将其发送回https://www.paypal.com/cgi-bin/webscr(或沙盒的https://www.sandbox.paypal.com/cgi-bin/webscr)以验证 IPN 消息。
根据此结果,您将收到无效或已验证的响应。
INVALID 可能意味着 IPN POST 不是来自 PayPal,而 VERIFIED 意味着 IPN POST 被验证为确实来自 PayPal。
【讨论】: