我有一个表单,用户可以选择购买各种数量的邮票。表单需要以美分处理(以符合指纹验证),但我需要以美元和美分显示值,因为它始终是用户可见的。
所以我需要从$str_rep_amount
变量的值中删除小数点以形成有效的指纹。
<script>
$(".stamps_qty").change(function(){
$.post( "fingerprint.php", $( "#target" ).serialize() ).done( function(data){
//data = fingerprint
$('input[name="fingerprint"]').val(data);
});
})
</script>
fingerprint.php
$merchant_id= $_POST["merchant_id"];
$transaction_password= 'abc123';
$txn_type = $_POST['txn_type'];
$ref = $_POST['primary_ref'];
$amount = $_POST['amount'];
$str_rep_amount = str_replace( '.', '', $amount );
$time = $_POST["fp_timestamp"];
$fingerprint = $merchant_id . '|' . $transaction_password . '|' . $txn_type . '|' . $ref . '|' . $str_rep_amount. '|' . $time;
//hash the concat stringe with sha1
$hash_fp = hash('sha1', $fingerprint);
表单数据发布到服务器并作为散列指纹返回,因此很难看到$str_rep_amount
变量发生了什么。
1.如何从$str_rep_amount
中删除小数?
2.如何在发回数据时将$str_rep_amount
的内容转储出来?