如何安全地发送贝宝形式的隐藏变量?

时间:2015-11-01 14:11:03

标签: php paypal-ipn

我有一个paypal表单,它将隐藏变量我可以使用firebug来编辑它。如何在将此表单发送到paypal之前避免这种情况我没有在我的数据库中存储任何值。我应该将这些数据存储在db中,一旦从paypal获得成功值,我应该检查当前金额是否等于已发送金额项目ID。

<form id="paypal_form_one_time" target="_top" class="paypal-form" method="post" action="https://www.sandbox.paypal.com/cgi-bin/webscr">
    <input type="hidden" value="_xclick" name="cmd">

    <input type="hidden" value="110.00" name="amount"> 

    <input type="hidden" value="xxxx@xxx.com" name="business">
    <input type="hidden" value="12345" name="item_number">

    <input type="hidden" value="Featured for 3 Months ($99)" name="item_name">

    <input type="hidden" value="USD" name="currency_code">
    <input type="hidden" value="1" name="no_note">
    <input type="hidden" value="1" name="no_shipping">
    <input type="hidden" value="1" name="rm">                   
    <input type="hidden" value="feature_item_id=1&amp;deal_item_id=0" name="custom">
    <input type="hidden" value="http://localhost/xxxx/xxxx/paypal_success" name="return">

    <input type="hidden" value="" name="user_email">

    <input type="hidden" value="http://xxxx/xx/xxx/paypal_cancel" name="cancel_return">
    <input type="hidden" value="http://xxx/xx/paxxypal_ipn" name="notify_url">
</form>

1 个答案:

答案 0 :(得分:0)

只需通过curl库和参数CURLOPT_POST发布到paypal - 在这种情况下,用户将无权访问更改参数

其他方式是实施PayPal Express Checkout API。使用此方法代替html表单有很多好处。它看起来比简单的html表单更难,但您可以节省创建IPN侦听器文件的时间,因为响应将立即传递,您不会使用IPN方法来检查事务是否成功。您还可以在一个会话中添加多个定期付款和一次性付款,包括税收和福利。你可以自由地添加所有这些东西,几乎所有东西。