我正在尝试为一些持续一周的研讨会设置注册表。基本上,他们可以单独报名参加研讨会,也可以报名参加整个星期的研讨会。根据他们的选择,价格会发生变化。我知道如何将此信息发送到 Paypal ,但我也想将信息提交到我自己的数据库。我如何提交到 Paypal 并将信息同时归档到我的数据库中?
我还希望返回一个变量来验证他们是否已付款,以便我可以在我的数据库中对其进行标记。
我是否需要另一个页面将所有这些信息放入数据库(一旦提交),然后将信息放入隐藏的表单字段,然后自动提交到 Paypal ?
提前致谢! :)
最佳答案
“付款成功后,您的用户将返回给您自己,此时您可以在数据库中记录付款。”
这正是你不应该做的事情。 依赖买家返回您的网站来更新订单状态是您能做的最糟糕的事情。 PayPal IPN 在设计时特别考虑到了这一用例。 只需添加 这将确保 PayPal 在付款完成后会向您 POST。即使您的买家已经关闭了他/她的浏览器。 您可以使用“自定义”字段将 IPN POST 链接到您网站上进行的交易。例如:
将确保您获得 $_POST['custom'] 为“1122334455”的 IPN POST。从那里,只需进行数据库调用即可将订单状态更新为“已付款”,或者使用任何您用来将其标记为已收到付款的内容。
哦,别忘了将数据发回 https://www.paypal.com/cgi-bin/webscr?cmd=_notify-validate验证 IPN POST。更多信息请访问https://www.paypal.com/ipn/
关于forms - 尝试设置 Paypal 注册表单,需要一些帮助!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5637052/