0

人々がクレジット カードでオンラインで支払う 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 ではそのようには表示されません。彼らのサポートに連絡したところ、私のコードに関係があると断言されました。

同じ結果で、変数を double としても試しました。値が変更される方法または理由がわかりません

4

1 に答える 1

1

この投稿を読む必要がありますPHP: 小数点以下 2 桁まで数値を表示する

入力を次のように変更します

<input
    id="total_amount" type="hidden" name="charge_total" 
    value="<?php echo number_format((float)$CHARGE_TOTAL, 2, '.', ''); ?>"
/>
于 2013-06-18T16:54:09.740 に答える