我无法找到这个问题的解决方案,虽然我知道这可能是因为它很简单。但是,我真的很感激一些帮助。 我在客户端的Wordpress网站上有一个定制的支付处理插件(用于CCBill)。在初始会员资格付款后,用户可以选择以任何金额进行额外捐赠,这些捐赠通过CCBill的ChargeByPreviousTransactionID系统进行,因此他们不必再次输入他们的信用卡详细信息。 插件检查用户是否具有现有事务并从数据库中提取相关数据。然后,当他们输入金额并提交表单时,它会构造一个查询字符串,然后将其作为弹出窗口的URL加载。
这会给我们带来两个具体问题:
有没有办法将这些数据传递给脚本,而无需打开弹出窗口或让用户离开我们的网站? 我无法让原始开发人员解决这个问题,我真的希望通过自己修复它来提高我的编程技能。
以下是代码的相关部分:
function shortcode_function( )
{
$detailsid='';
if(is_user_logged_in())
{
global $current_user;
$detailsid = get_user_meta( $current_user->ID, 'get_donate_details_id', true );
$detailsmoney = get_user_meta( $current_user->ID, 'get_donate_details_price', true );
if($detailsid!=''&& isset($_POST['wq_re_donate_now']))
{
?>
<script type="text/javascript">
var url="https://bill.ccbill.com/jpost/billingApi.cgi?clientAccnum=900000&username=test123&password=test123&action=chargeByPreviousTransactionId&newClientAccnum=900000&newClientSubacc=0000&sharedAuthentication=1&initialPrice=<?php echo number_format($_POST['wq_amount']); ?>&initialPeriod=365&recurringPrice=0&recurringPeriod=0&rebills=0&subscriptionId=<?php echo $detailsid; ?>¤cyCode=840";
var myWindow =window.open(url, "myWindow", "width=200, height=100");
</script>
<?php
}
}
if($detailsid!='')
{
?>
<div class="donateholder">
<div class="donateheader"><h4>Make Donation</h4></div>
<form method="post" action="">
<div class="donatediv" align="left">
<h3>Amount: $<input maxlength="4" onkeypress="return isNumberKey(event)" type="text" size="5" class="amount" name="wq_amount" id="randomnumber" />
<input type="submit" name="wq_re_donate_now" value="Submit" />
</h3></div>
</form>
</div>
<?php
}
}
谢谢!
答案 0 :(得分:0)
open -a /path/to/vmd --args someMolecule.gro
并不打算从JavaScript端调用。您需要有一个后端服务器,它接受从前端完成的JavaScript调用以及必要的用户相关信息,然后,这个后端服务器需要调用ChargeByPreviousTransactionID
。
这样,您可以告诉CCBill商户支持将后端服务器的IP地址列入白名单,以便您可以进行此HTTP呼叫。确保您的后端服务器具有静态IP,以便永远不会更改。
请记住,当您在前端使用URL时,如果您对其中的用户名和密码进行硬编码,则表示需要将它们放在后端。像这样,每个人都可以通过在浏览器中检查JavaScript来查看您的用户名和密码。