как передать адрес электронной почты из формы оформления заказа на страницу оплаты с помощью Stripe

Я использую пользовательскую кнопку проверки Stripe, и я могу успешно создавать сборы. Теперь я хочу передать адрес электронной почты в форме и создать нового клиента. Тем не менее, адрес электронной почты не передается на мой сервер, а идет непосредственно в Stripe.

Я надеялся, что смогу сделать что-то вроде этого:

//pass value from input field on previous page
$email = $_POST['email'];

// Create a Customer
$customer = Stripe_Customer::create(array(
  "card" => $token,
  "description" => "$email")
);

но я не хочу просить пользователя дважды его адрес электронной почты, так как форма Stripe уже запрашивает он.

как я могу захватить адрес электронной почты для создания нового клиента?

2 ответов


ОК...хотя я не знал правил здесь, вот ответ:

использование проверки полосы.js

в своем token обратный вызов, вы можете получить доступ res.email таким же образом вы получаете доступ к res.id который даст вам электронное письмо, отправленное пользователем. Вот код:

  var token = function(res){
      var $theToken = $('<input type=hidden name=stripeToken />').val(res.id);
      var $theEmail = $('<input type=hidden name=stripeEmail />').val(res.email);
      $('form').append($theToken);
      $('form').append($theEmail).submit();
  };

вы также можете поместить их в массив, а затем использовать

$.each(

но это было бы упражнением для вас. Ура, Колин!--6-->


электронное письмо отправляется вместе с токеном.

он передается в переменную post: $_POST ['stripeEmail'].