Paypal付款与隐藏的形式在PHP不安全。

时间:2018-03-23 16:14:40

标签: php paypal

我有一个小型购物网站的paypal表格。问题是,paypal表单以隐藏的形式传递表单数据,而这种形式根本没有保护。因为我可以使用萤火虫并以隐藏的形式编辑价格,以便在结账前支付更少的金额。

这就是我试过的

1。)我试图使用会话但我仍然需要在隐藏的表单值中打印它,如下所示。

<input type="hidden" name="amount" value="<?php echo htmlentities($_session['amount']); ?>">

2.)我无法将会话变量中的金额传递给Paypal提交页面(https://www.sandbox.paypal.com/cgi-bin/webscr

我的问题是,我通过哪种方式确保隐藏的表单数据不会被小偷篡改,小偷可以通过firebug更改产品的价格,然后使用paypal结账。

这是脚本

<?php
session_start();
$_session['amount'] =30;

$paypal_url='https://www.sandbox.paypal.com/cgi-bin/webscr'; // Test Paypal API URL
$paypal_id='myemail@gmail.com'; // Business email ID
?>
<h4>Welcome, Guest</h4>

<div class="product">            

    <div class="name">
        Television
    </div>
    <div class="price">
        Price:$30
    </div>
    <div class="btn">
    <form action="<?php echo $paypal_url; ?>" method="post">
    <input type="hidden" name="business" value="<?php echo $paypal_id; ?>">
    <input type="hidden" name="cmd" value="_xclick">
    <input type="hidden" name="item_name" value="Television">
    <input type="hidden" name="item_number" value="1">
    <input type="hidden" name="amount" value="30">

    <input type="hidden" name="currency_code" value="USD">

    <input type="hidden" name="cancel_return" value="http://mysite/payment_with_paypal/cancel.php">
    <input type="hidden" name="return" value="http://mysite/payment_with_paypal/success.php">
    <input type="image" src="https://www.sandbox.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.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
    </form> 
    </div>
</div>

0 个答案:

没有答案