Создание токена не работает в полосе - PullRequest
0 голосов
/ 15 мая 2018

Я пытаюсь создать, а затем отправить на свой серверный код, но когда я нажимаю кнопку отправки, $ _POST ['stripeToken'] не существует, и я понятия не имею, почему.Вот мой код:

        <div class="ui main container">
    <form action="paiement.php" class="ui form" id="payment_form" method="post">
        <div class="field">
            <input type="text" name="clientNom" required placeholder="Votre nom" value="John Kennedy">
        </div>
        <div class="field">
            <input type="email" name="clientEmail" required placeholder="votre@email.fr" value="john.kennedy@gmail.com">
        </div>
        <input type="hidden" name="commandeTotal" value="<?php echo $somme ?>">
        <div class="field">
            <input type="tel" name="clientTelephone" required placeholder="votre@email.fr" value="0102030405">
        </div>
        <div class="field">
            <input type="text" placeholder="Votre code de carte bleu" data-stripe="number" value="4242 4242 4242 4242">
        </div>
        <div class="field">
            <input type="text" placeholder="MM" data-stripe="exp_month" value="10">
        </div>
        <div class="field">
            <input type="text" placeholder="YY" data-stripe="exp_year" value="18">
        </div>
        <div class="field">
            <input type="text" placeholder="CVC" data-stripe="cvc" value="123">
        </div>
        <p>
            <button class="ui button" type="submit">Acheter</button>
        </p>
    </form>
</div>

    Stripe.setPublishableKey('pk_test_my publishable key')
    var form = document.getElementById('payment-form');
    form.addEventListener('submit', function(event) {
      event.preventDefault();

      stripe.createToken(card).then(function(result) {
        if (result.error) {
          // Inform the customer that there was an error.
          var errorElement = document.getElementById('card-errors');
          errorElement.textContent = result.error.message;
        } else {
          // Send the token to your server.
          stripeTokenHandler(result.token);
        }
      });
    });
    function stripeTokenHandler(token) {
      // Insert the token ID into the form so it gets submitted to the server
      var form = document.getElementById('payment-form');
      var hiddenInput = document.createElement('input');
      hiddenInput.setAttribute('type', 'hidden');
      hiddenInput.setAttribute('name', 'stripeToken');
      hiddenInput.setAttribute('value', token.id);
      form.appendChild(hiddenInput);

      // Submit the form
      form.submit();
    }

Код на стороне сервера - это просто эхо значений моей формы.Спасибо за ваши ответы.

...