【发布时间】:2011-08-11 19:44:14
【问题描述】:
我在网上商店工作,需要帮助才能使 iDeal 插件(来自荷兰的付款方式)正常工作。
我需要发送需要支付的物品的金额(价格)。 我像这样从上一页获取商品的数量
$qty = $_POST['qty'];
并像这样创建一个总价格变量(2999 是价格,它需要以美分为单位,所以价格是 29,99)
$totaalprijs = 2999 * $qty;
$iAmount = $totaalprijs;
访问者选择他的银行并通过按下提交按钮开始付款 然后发生这种情况
$oIdeal->setIdealAmount ( $iAmount );
它正在将变量发送到另一个php文件中的这个函数,检查该值是否为非0的数字,并通过另一个函数将其发送到支付方式。
public function setIdealAmount ( $intIdealAmount ) {
# Is this a valid ideal amount?
if ( is_numeric ( $intIdealAmount ) && $intIdealAmount > 0 ) {
$this->idealAmount = $intIdealAmount;
}
else {
throw new Exception( 'Invalid ideal amount, please check.' );
}
return $this;
}
这就是问题所在,当它通过函数发送时,它总是返回 0 除非我这样做:
$iAmount = 2999;
我希望商品的总价格为 price * qty,但它仅在我声明 $iAmount 变量时返回 $this。
我得到的错误信息是这样的:
Fatal error: Uncaught exception 'Exception' with message 'Invalid ideal amount, please check.' in /home/spraytanning-express.nl/www/TargetPayIdeal.class.php:154 Stack trace: #0 /home/spraytanning-express.nl/www/betalen.php(116): TargetPayIdeal->setIdealAmount(0) #1 {main} thrown in /home/spraytanning-express.nl/www/TargetPayIdeal.class.php on line 154
希望你们中的一些人可以帮助我... 顺便说一句,对不起我的英语不好:)
提前致谢!
【问题讨论】:
-
您是否 100% 确定在 $_POST['qty'] 中设置了某些内容?如果没有设置任何内容,0 将是可能导致此行为的默认值。
-
是的,当我有 2 个产品添加到我的购物车时,它会返回例如 int(5998) var_dump($totaalprijs)
标签: php payment-processing webshop