如何在付款网关

时间:2015-11-07 04:15:35

标签: javascript php

由于我们不符合PCI标准,因此支付网关提供商向我们<iframe>付款。问题是我无法使用我的购物车总数(19.00)在iframe中设置金额字段。

退房页面:

check out page

付款页面:

payment page

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){   

   $('#myiframe').load(function(){

        var iframe = $('#myiframe').contents();               

        iframe.find("#amount").val(<?php echo total; ?>);
        iframe.find("#firstname").attr('readonly','readonly');
   });
});
</script>
</head>
<body>

<iframe id="myiframe" src="paymentgateway.com">
  <p>Your browser does not support iframes.</p>
</iframe>

</body>
</html>

上述代码不起作用,因为negete.net/sys/checkout.php位于另一个域中的一个域和付款表单中。原因是跨源资源共享(CORS)的问题。

我试图解决这个问题,但没有任何效果。如果有人遇到过这样的问题,我们非常感谢您的帮助。下面给出了一些我发现与CORS相关的链接。

1 个答案:

答案 0 :(得分:1)

我找到了解决上述问题的方法。实际上它是我错过的支付网关发行人的文件。解决方案是您可以将金额作为iframe url中的查询字符串传递。

<iframe id="myiframe" src="paymentgateway.com?amount=50">
  <p>Your browser does not support iframes.</p>
</iframe>

感谢您的帮助。