我正在建立一个页面,其中包含一些我要出售的物品paypal
。首先我做了固定价格的通用按钮,点击你重定向到贝宝页面后,你的值如下:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top" class="payPalBtn">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="test@gmail.com">
<input type="hidden" name="item_name" value="test">
<input type="hidden" name="button_subtype" value="services">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="amount" value="10.00">
<input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHostedGuest">
<input type="image" src="https://www.paypalobjects.com/he_IL/IL/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
但这很危险,因为客户可以更改金额值......并且可能会产生一些问题。所以我选择使用他们的 API - 这意味着,在服务器端发送一些值,如价格、金额......以及返回token id
。之后再次发送一些数据,最后付款被转移,一切都结束了。其中一个参数是: $ PayPalReturnURL
,这是成功后的页面,用户重定向到。
现在,在我这样做并验证了付款通过之后,我想启动一个私人程序来执行一些私人功能(每次我运行它都需要花钱),在付款通过后,我应该只执行一次。我重定向的页面是例如:payment.php,我只是在那里启动我的功能。
问题是:我如何确定用户不会直接访问那个 PHP 地址并自动启动这个功能。我的选择是什么保证这个功能在贝宝重定向到我之后只运行一次。