ちょっと、ちょっと私はプログラミングにかなり慣れています。あなたの助けに本当に感謝します。私はストライプの支払いを設定しようとしていますが、カードを充電すると、この非常に長いエラーメッセージが何度も繰り返されています。致命的なエラー:キャッチされていない例外ストライプ
致命的なエラー:C:\ xampp \ htdocs \ vendor \ stripe \ stripe-php \ lib \ ApiRequestor.php:124のAPIでメッセージ 'No such such token:false'というキャッチされない例外 'Stripe \ Error \ InvalidRequest'要求 'req_MN1aLPlF6OMPIv' スタックトレース:#0 C:\ XAMPP \ htdocsに\ベンダ\ストライプ\ストライプ-PHP \ LIB \ ApiRequestor.php(102):ストライプ\ ApiRequestor :: _ specificAPIError({\ n "エラー":{\ N ... '、400、アレイ、アレイ、アレイ)#1 C:\ XAMPP \ htdocsにベンダ\ストライプ\ストライプ-PHP \ \ LIB \ ApiRequestor.php(309):ストライプ\ ApiRequestor-> handleErrorResponse({\ N "エラー":{\ n ... '、400、アレイ、アレイ)#2 C:\ XAMPP \ htdocsにベンダ\ストライプ\ストライプ-PHP \ \ LIB \ ApiRequestor.php(65):ストライプ\ ApiRequestor-> _interpretResponse({\ n "エラー":{\ n ... '、400、アレイ)#3 C:\ XAMPP \ htdocsにベンダ\ストライプ\ストライプ-PHP \ \ LIB \ ApiResource.php(119):ストライプ\ ApiRequestor-> request( 'post'、 '/ v1/charges'、Array、Array)#4 C:\ xampp \ htdocs \ vendor \ stripe \ stripe-php \ lib \ ApiResource.php(15 8):ストライプ\ ApiResource :: _ staticRequest( 'ポスト'、 '/ V1 /料金'、配列、NULL)#5 C:\ xamppの\ htdocsに\ベンダー\ストライプ\ストライプ-PHP \ libに\ Charge.php(74) :Stripe \ ApiResourc in C:\ xampp \ htdocs \ vendor \ stripe \ stripe-php \ lib \ ApiRequestor.php on line 124
これは何を意味しているのですか?私は文字通りストライプからすべてのものをコピー/ペーストしました。以下は、私のコードは、それが
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);
が
form.submit();
}
がトークンを作成したりするときにエラーを表示するフォームを送信サーバーに送信されますので、フォームにトークンIDを挿入
Stripe.setPublishableKey('<?=STRIPE_PUBLIC;?>');
function stripeTokenHandler(token) {
ですフォームが提出されます。
var form = document.getElementById('payment-form');
form.addEventListener('submit', function(event) {
event.preventDefault();
stripe.createToken(card).then(function(result) {
if (result.error) {
エラー」
var errorElement = document.getElementById('card-errors');
errorElement.textContent = result.error.message;
} else {
私は次のコードでThankYou.phpに私の顧客を取っています。この後、サーバー
stripeTokenHandler(result.token);
}
});
});
にトークンを送信があったことを顧客に通知
<?php
require_once '/init.php';
あなたの秘密鍵を設定します。トークンは、チェックアウトや要素を使用して作成された生産
\Stripe\Stripe::setApiKey(STRIPE_PRIVATE);
でライブ秘密鍵にこれを変更することを忘れないでください! フォームから提出された支払いトークンIDを取得:
$token = isset($_POST['stripeToken']);
担当者のカード:
$charge = \Stripe\Charge::create(array(
"amount" => 1000,
"currency" => "usd",
"description" => "Example charge",
"source" => $token,
));
を。実際にはissetはありませんが、私はISSETがないと、定義されていないindex stripeTokenと言います。フォームにトークンIDを挿入するとstripeTokenがストライプコードとして定義されます。 –
function stripeTokenHandler(token){ //トークンIDをフォームに挿入してサーバーに送信します 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); //フォームを送信 form.submit(); } –