0

フォームを含むページがあります。このページには、いくつかの変数を設定するための PHP スクリプトもあります。これらの変数は、ユーザーが送信をクリックしたときに非表示の値として送信されます。

ユーザーが入力した値 (金額) を取得し、それを PHP 内の変数として設定して、フォームを投稿する必要があります。これは可能ですか?

PHPスクリプトで最初にMD5ハッシュを通過する必要があるため、フォーム送信値を送信することはできません。これは、Realex クレジットカード支払いの要件です。

JavaScriptでこれが可能になるのではないかと思っていましたか?

編集

明確にするために、ページにはPHPがあります(たとえば、ここでは簡略化されています)

<?php
$amount ="";
$tmp = "$timestamp.$merchantid.$orderid.$amount.$curr";
$md5hash = md5($tmp);
$tmp = "$md5hash.$secret";
$md5hash = md5($tmp);
?> 

上記の変数はすべて事前定義されており、変更されませんが、金額は顧客の入力内容によって異なります。

フォームは上記と同じページにあるため、顧客が値を入力すると、[送信] をクリックします。これが上記の md5 ハッシュと共に送信されます。

<form>
<input type="text" name="donate_amount" value="">
<input type="hidden" name="AMOUNT" value="<?=$amount?>
</form>

しかし、投稿する前にこれを動的に行う方法がわかりません。

4

3 に答える 3

0

コードを見ずにこれを正しく取得しているかどうかはわかりませんが、そこから得たものから、セッションに何でも保存したいと思います。

入力から来ている場合

$_SESSION['derp'] = Hash::howeveryouhash($_POST['derp'])

または、入力が取得された後にハッシュが発生した場合は、ハッシュされた入力をセッションに保存するだけですか?

これがあなたの意図したものかどうかはわかりませんが、そうである場合は、$_SESSION の適切な使用を保証するために、必ず php マニュアルを参照してください!

于 2013-05-31T14:04:44.733 に答える
-1

これを行うのはどうですか:

<input type="text" name="amount" onchange="ajaxFunction(this)" value="" />

次に、入力フィールドが変更されると、関数 ajaxFunction が PHP スクリプトを呼び出して値を送信します。PHP スクリプトでは、後で使用するために $_SESSION['amount'] に値を保存できます。

function ajaxFunction(obj) {
   $.post("store_amount.php", { amount: $(obj).val() } );
}

jQuery が必要です。

于 2013-05-31T13:59:11.870 に答える