我正在尝试设置一个 Moneris 托管的支付页面,人们可以在其中使用信用卡在线支付。我遇到了 Moneris 的一些问题,联系了他们的支持并告诉我,我遇到的错误是由于我的交易“总金额”没有任何小数位,因此破坏了支付系统。
这是我设置值的地方(如果他们选择此单选按钮,则值为 1.00)
<label class="radio" for="full_registration-4">
<input type="radio" name="full_registration" id="full_registration-4" value="1.00">
Test payment - $1
</label>
然后,此表单将其信息传递到不同的验证页面,这就是我检索变量的方式:
$CHARGE_TOTAL = (is_numeric($_POST['full_registration']) ? (float)$_POST['full_registration'] : 395);
然后,我有一个隐藏的自动验证表单,它传递 Moneris 需要的所有信息(即;商店 ID、描述、项目等)
<INPUT id="total_amount" TYPE="HIDDEN" NAME="charge_total" VALUE="<?php echo $CHARGE_TOTAL; ?>">
初始形式的变量是 1.00,但在 Moneris 中并没有以这种方式显示,而且显然应该如此。我已经联系了他们的支持,他们向我保证这与我的代码有关。
我也尝试将变量作为双精度变量,结果相同。我不知道如何或为什么改变价值