如何使用立即购买按钮将会话变量传递给paypal

时间:2010-11-03 20:59:02

标签: forms post paypal paypal-ipn

当我的用户使用他们的用户名和用户ID保存在会话变量中时,他们可以使用paypal捐赠。使用简单的立即购买按钮,您可以简单地在贝宝生成。

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="XXX">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

付款成功后,会将所有_POST数据发送到我的confirm_payment.php。我可以使用他们支付的邮件,并将其与我的用户数据库进行比较,以找到正确的用户,但我不能确定他们使用相同的电子邮件为paypal和我的网站。

我需要将$ _SESSION ['用户名']传递给paypal,以便我可以使用此信息自动为我的用户提供捐赠者状态。我可以添加如下内容:

<input type="hidden" name="custom" value="custom variable">

到我的按钮代码?以下是有关变量avaliable paypal info

的更多信息

2 个答案:

答案 0 :(得分:3)

我发现文档令人困惑,但经过大量网页浏览后,我发现自定义变量不允许您创建自己的隐藏字段,但有3个变量可能有用:

“custom”可选的传递变量,用于您自己的跟踪目的,买家看不到。 默认 - 没有变量传回给您。 256个字符

“item_number”参见说明。传递变量,用于跟踪购买的产品或服务或所做的贡献。您指定的值将在付款完成后传回给您。如果您希望PayPal跟踪库存或跟踪按钮销售的商品的盈亏,则需要此变量。

“invoice”可选的传递变量,可用于标识此次购买的发票号。 默认 - 没有变量传回给您。 127characters。

因此,如果您在允许立即购买按钮之前保存数据(我通过显示所做选择的摘要屏幕并将其保存到数据库),您可以输入一个值(例如,主键保存的数据)作为自定义值。

请注意,数据会发布到您指定的即时付款通知页面。

https://www.x.com/developers/paypal/documentation-tools/paypal-payments-standard/integration-guide/Appx_websitestandard_htmlvariables#id08A6HF00TZS

答案 1 :(得分:0)

是的,你可以这样添加,这是正确的方法,当paypal重新回到IPNHandler时,你会在查询字符串中获得此custom隐藏字段的值同名。