某些背景信息:我正在使用NodeJS和Express框架开发一个网站。网站的一部分用户可以进行颜色个性测试。当他们完成测试后,他们的所有答案(包括姓名,电子邮件和其他联系信息)都会通过POST发送到服务器。用户被重定向到一个页面,在那里他们可以选择使用Paypal按钮为他们的个人资料评估付费。
我的问题:如何在触发IPN侦听器后从原始测试表单中检索信息?我应该将用户的信息存储在数据库中吗?如果我这样做,我不确定如何在付款通知后检索正确的用户信息。
该过程应如下所示:用户进行测试>结果发送到服务器>服务器将用户重定向到付款页面>用户付费>触发IPN>做一些测试结果(比如发送电子邮件或其他东西)。
答案 0 :(得分:1)
在您的付款申请中,您可以在"发票"中添加记录ID。参数,假设您使用的是PayPal标准HTML代码。所以它看起来像这样:
<input type="hidden" name="invoice" value="1234" />
当然,您将使用保存在数据库中的记录ID值替换1234。
该值将在IPN数据中以$_POST['invoice']
的形式返回,因此您可以将数据从数据库中拉回来。
你可以使用&#34; custom&#34;做同样的事情。参数,如果你宁愿使用它而不是&#34; invoice&#34;。
<input type="hidden" name="custom" value="1234" />
然后$_POST['custom']
将返回IPN。