【问题标题】:How to pass javascript in PHP variable [duplicate]如何在 PHP 变量中传递 javascript [重复]
【发布时间】:2013-06-12 14:35:51
【问题描述】:

我正在处理 Authorize.net 表单提交。

$api_login_id = $bookingSettingObj->getAuthorizeAPI();  // works
$transaction_key =  $bookingSettingObj->getAuthorizeTXN(); // works
$amount = /* What should i put here so i can echo the final price that is calculated by Javascript Function : addToAuthorizeForm(); ????? */ 

价格计算由javascript函数addToAuthorizeForm完成。 请让我知道我应该添加什么代码,以便 javascript 函数“addToAuthorizeForm”可以成功回显..

更新:

我已经在使用 Ajax。这是我正在使用的 javascript 函数。我只需要知道我放了哪些代码来执行这个 javascript 函数并回显最终价格..

    function addToAuthorizeForm() {
        $wbc('#slots_purchased').html('');
        var new_html = '';
        var i = 1;
        $wbc('#booking_slots').find('input').each(function() {


            if($wbc(this).attr('checked')) {
                var slot_id = $wbc(this).val();
                //ajax request to get data
                $wbc.ajax({
                  url: '<?php echo plugins_url('my_plugin/public');?>/ajax/getSlotInfo.php?slot_id='+$wbc(this).val(),
                  success: function(data) {

                      arrData=data.split("$");
                      if(arrData[1]>0) {
                          q = 1;
                          if($wbc('#seats_'+slot_id).val()!=undefined) {
                              q = $wbc('#seats_'+slot_id).val();
                          }
                          new_html += '<input type="hidden" name="item_name_'+i+'" value="'+arrData[0]+'" /><input type="hidden" name="amount_'+i+'" value="'+arrData[1]+'" /><input type="hidden" name="quantity_'+i+'" value="'+q+'" />';
                          $wbc('#slots_purchased').html(new_html);
                         i++;
                      }
                  }
                });

            }

        });

    }

【问题讨论】:

  • 你必须使用 ajax。
  • 您为什么需要这样做?通常,服务器计算和 javascript 消耗。看看你能不能稍微改变你的逻辑
  • 您不应该在服务器端而不是客户端计算“最终价格”吗?如果您依靠客户端代码来计算价格,那么用户可以自己制定价格。
  • @Jessica 如何在 PHP 变量中传递 javascript?

标签: php javascript authorize.net


【解决方案1】:

您不能在服务器端 PHP 代码中调用 JS 函数。

尝试在 PHP 端实现相同的逻辑并调用该函数

<?php 
function addToAuthorizeForm () {
.
.
Add the Same logic that you have put in the JS function
.
.
}

$amount = addToAuthorizeForm();
?>

将所需的参数传递给函数并获得封装逻辑的输出。

【讨论】:

  • 如果我放在 下,此代码将无法工作,因为它是 javascript 函数
猜你喜欢
  • 2013-10-28
  • 1970-01-01
  • 2014-01-11
  • 1970-01-01
  • 1970-01-01
  • 2016-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多