Wie implementiert man ein Stripe Checkout: custom-Taste
Laut der Dokumentation Kasse unterstützt zwei verschiedene Integrationen: die Einfache und individuelle.
Der einfache Weg funktioniert für mich:
**<form action="create_subscription.php" method="POST">**
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="asdsdfasd3232"
data-amount="2000"
data-name=""
data-description="2 widgets"
data-image="https://s3.amazonaws.com/stripe-uploads/acct_19EnQrGHC6pu6Qvdmerchant-icon-1485553962843-logo_stripe.png"
data-locale="auto">
</script>
</form>
Jedoch in der benutzerdefinierten Art und Weise, die ich nicht verstehe , wie und wo soll ich Sie nennen, "create_subscription.php" Skript. Dies ist die benutzerdefinierte integration code:
<script src="https://checkout.stripe.com/checkout.js"></script>
<button id="customButton">Purchase</button>
<script>
var handler = StripeCheckout.configure({
key: 'asdsdfasd3232',
image: 'https://s3.amazonaws.com/stripe-uploads/acct_19EnQrGHC6pu6Qvdmerchant-icon-1485553962843-logo_stripe.png',
locale: 'auto',
token: function(token) {
//You can access the token ID with `token.id`.
//Get the token ID to your server-side code for use.
}
});
document.getElementById('customButton').addEventListener('click', function(e) {
//Open Checkout with further options:
handler.open({
name: '',
description: '2 widgets',
amount: 2000
});
e.preventDefault();
});
//Close Checkout on page navigation:
window.addEventListener('popstate', function() {
handler.close();
});
</script>
Habe ich versucht, diesen code, aber es funktioniert nicht. Kann mir jemand zeigen in die richtige Richtung?
<form action="/create_subscription.php" method="POST">
<script src="https://checkout.stripe.com/checkout.js"></script>
<div id="stripe-demo" class="evo-button rounded cele">
<span>Register</span>
</div>
<script>
var handler = StripeCheckout.configure({
key: "asdsdfasd3232",
image: "img/logo.png",
name: "",
description: "Subscription for 1 month",
panelLabel: "Sign Me Up!",
amount: "2000",
allowRememberMe: false
});
document.getElementById('stripe-demo').addEventListener('click', function(e) {
handler.open();
e.preventDefault();
});
window.addEventListener('popstate', function() {
handler.close();
});
</script>
</form>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dank Comdenz
Dies ist die Art, wie ich es lösen mit bestehenden form und ruft meinen server-side-code.
Mit dabei, Sie fertig zu machen brauchen neues Formular, rufen Sie einfach an Ihrer bestehenden form mit der javascript -
In der
token
callback-Funktion, die Sie würde tun müssen, was notwendig ist, zum senden der token in Ihrem backend installieren.In der Regel erfolgt dies durch ein form-element mit einem versteckten element, und von der callback-Sie würde den Wert der hidden-element, um die token-ID und senden Sie das Formular.
Könnte man auch dynamisch erstellen die form von Grund -, Feuer-oder eine AJAX-Anfrage oder eine andere Methode, die geeignet ist für Ihre spezifischen Anforderungen.
Hier ist ein Beispiel für eine benutzerdefinierte integration mit einer bestehenden form und setzt den Wert der hidden-Elemente aus dem Rückruf: https://jsfiddle.net/ywain/g2ufa8xr/
Kasse den Beitrag auf Custom Stripe checkout nicht Posten Sie haben das gleiche Problem wie ich. Hoffe, das hilft Ihnen heraus
Ich bin einfach nur durch mit allem. Also ich habe festgestellt, dass einige Hinweise auf
https://jsfiddle.net/user/ywain/fiddles/1/. Hier sollten Sie sich die https://jsfiddle.net/ywain/9zscyyhg/.
Bei sommerlichen haben Sie, um die stripe-token an
token: function(token) {
//Können Sie den Zugriff auf die token-ID mit
token.id
.//Holen Sie sich die token-ID, um Ihre server-side-code für die Verwendung.
Dem Einreichen der Kauf nur löst der Streifen modal Zahlung form. So aus der form, es muss einen Weg zurück auf die Website. Dies hat zu tun mit addintional javascript-code.
Hoffe das man dir helfen. Finden Sie hier https://gist.github.com/ziadoz/5101836
`
Wenn das Formular abgeschickt wird Inhalt Veröffentlicht
/create_subscription.php
. Können wir den Inhalt von /create_subscription.php? Was ist die Antwort beim Absenden des Formulars, bekommen wir eine Fehlermeldung zurück oder status-code-200? Sind Sie in der Lage, Zugriff auf die php - /web-server-logs? Jede Ausgabe?