Не удается получить умную кнопку PayPal для принятия значения PHP - PullRequest
0 голосов
/ 21 мая 2019

Я пытаюсь создать умную кнопку PayPal в моем PHP-скрипте. Я не могу получить значения из моего php-скрипта в код javascript в объекте json. Я попытался повторить php прямо в JavaScript, но это не сработало. Я пытался использовать Jquery, но это не сработало. Может кто-нибудь мне помочь? вот мой код:

Я пытался использовать Jquery и напрямую выводить свой php в объект json, но ни один из них не работал.

var valueNumber =  $("#grandTotal").html();
    valueNumberArray = valueNumber.split(">")
    valueNumberArray[1] = "'"+valueNumberArray[1]+"'"; 
    alert(valueNumberArray[1]);
    
  paypal.Buttons({
    createOrder: function(data, actions) {
      return actions.order.create({
        purchase_units: [{
          amount: {
            value: valueNumberArray[1]
          }
        }]
      });//insert JSON above this line
    },
    onApprove: function(data, actions) {
      return actions.order.capture().then(function(details) {
        alert('Transaction completed by ' + details.payer.name.given_name);
        // Call your server to save the transaction
        return fetch('/BurgerJoint/GetOrder.php', {
          method: 'post',
          headers: {
            'content-type': 'application/json'
          },
          body: JSON.stringify({
            orderID: data.orderID
          })
        });
      });
    }
  }).render('#paypal-button-container');

1 Ответ

0 голосов
/ 24 мая 2019
Please save your file with .php extension.  You can assign php value into js variable and pass it to PayPal. I have attached sample code below: I am passing amount value from php variable.`<script> 
  var total_price= '<?php echo $total_price; ?>';
   paypal.Buttons({
    createOrder: function(data, actions) {
      return actions.order.create({
        purchase_units: [{
          amount: {
            value: total_price
          }
        }]
      });//insert JSON above this line
    },
    onApprove: function(data, actions) {
      return actions.order.capture().then(function(details) {
        alert('Transaction completed by ' + details.payer.name.given_name);
        // Call your server to save the transaction
        return fetch('/BurgerJoint/GetOrder.php', {
          method: 'post',
          headers: {
            'content-type': 'application/json'
          },
          body: JSON.stringify({
            orderID: data.orderID
          })
        });
      });
    }
  }).render('#paypal-button-container');
  </script>`
...