在网站上预先填写捐款金额

时间:2013-11-10 16:10:26

标签: php paypal donations

我想要完成的是让用户在网站上输入文本输入金额,当点击paypal捐赠按钮时,支付表格预先填入他们输入文本输入的金额。

我看过其他帖子的答案似乎在过去解决了这个问题,但是在尝试自己实现相同的解决方案时,我无法让它工作......如果这样做对于一个小小的无知对我的疏忽,然后我提前道歉。

以下是我选择捐赠按钮类型时从paypal获得的代码段,并选择“捐赠者输入自己的贡献金额”选项

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

以下是为其他人解决此问题的帖子:Paypal custom amount for "Donate Now" button

根据该帖子的说法,我修改了我的paypal片段:

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

所以,我刚刚添加了<input type="text" name="amount" id="amount" value"">,根据我的理解应该允许我将输入的值传递给付款表单。这不是出于某种原因。

非常感谢帮助!

1 个答案:

答案 0 :(得分:0)

您正在使用托管按钮,因此您无法直接在按钮代码中设置金额。如果你想这样做,你需要使用一个非托管按钮,你可以通过进入Pay​​Pal中的按钮编辑器并取消选中“PayPal上的保存按钮”选项。也就是说,您应该能够设置捐赠按钮,让人们在PayPal页面上输入金额,而不是在您自己的页面上输入金额并将其传递出去,因此您可能需要查看该金额。

非托管按钮的缺点是人们可以在按钮代码中看到金额,您的电子邮件地址等,他们可能会查看来源,复制代码,更改值,然后加载并支付给您比产品少的数量。当然,希望您在运送产品或提供仅限订阅的网站之前有适当的程序来抓住这个,但这只是您需要牢记的事情。

另一种选择是切换到Express Checkout API。这基本上是标准按钮的API版本,但是当使用API​​时,实际上在浏览器中看不到任何代码,因此人们不能试图弄乱它。