Paypal动态按钮和IPN链接

时间:2012-09-14 04:13:00

标签: php paypal paypal-ipn

我已经看到过这样的几个问题。但是我希望得到一些关于其中一些问题的总体看法!

我理解IPN是如何工作的以及如何倾听以确保它来自paypal。

我的主要疑问是我是否要使用代码动态生成paypal按钮:

<form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="me@mybusiness.com">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="item_name" value="Teddy Bear">
<input type="hidden" name="amount" value="12.99">
<input type="image" src="http://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif" border="0" `enter code here`name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
</form>

来自paypal开发者网站:https://www.paypal.com/cgi-bin/webscr?cmd=_pdn_xclick_techview_outside

使用它是否安全?我正在阅读另一篇文章,说这是不安全的,因为变量可以被篡改。我需要加密表单吗?

干杯,

尼克

1 个答案:

答案 0 :(得分:1)

我要回答我自己的问题。解决方案是只比较&#34; item_name&#34;和&#34;金额&#34;变量,如果我使用数据库生成,请确保它们完全相同。如果有人篡改它并支付我1.00美元而不是100美元那么这就是免费捐赠和运气不好:P

我将要做的是:

  1. 创建一个数据库来存储商品名称,金额,货币等。
  2. 在购物页面上,我将使用item_name和amount
  3. 动态生成它
  4. 设置我的paypal以向我将要制作的IPN听众发送交易
  5. 使用数据库比较item_name和amount,它将验证它是否是有效的表单提交。
  6. 简单!我喜欢! WOO!