2017-05-23 3 views
0

Ich entwickle eine Website, die Front-End mit Angularjs und Backend mit Laravel gemacht wird. Ich möchte Stripe-Zahlungen integrieren. Ich stehe vor der Schwierigkeit, ein angularjs api zu laravel für Streifenzahlung hinzuzufügen. Also versuche ich es nur mit prozeduralen PHP zu lösen. Hier ist mein Code.Stripe Zahlung mit PHP

<?php 
require_once('/stripe-php/lib/Stripe.php'); 
require_once('/stripe-php/lib/Charge.php'); 

Stripe::setApiKey('my-secret-key'); 
$charge = Charge::create(array('amount' => 2000, 'currency' => 'usd', 'source' => $token)); 
if ($charge) { 
    echo "Payment successcul"; 
} 
else { 
    echo "Not success"; 
} 

?> 

Ich kann das Token bekommen. Aber die Zahlung verarbeitet nicht und ich sehe eine leere Seite.

+1

Aktivieren Sie 'error_reporting()' oder sehen Sie sich die Protokolle an, es sollte Ihnen wahrscheinlich einen schwerwiegenden Fehler melden. – Rasclatt

Antwort

0

Fügen Sie Stripes error handling in die Seite selbst ein.

try { 
    // Use Stripe's library to make requests... 
} catch(\Stripe\Error\Card $e) { 
    // Since it's a decline, \Stripe\Error\Card will be caught 
    $body = $e->getJsonBody(); 
    $err = $body['error']; 

    print('Status is:' . $e->getHttpStatus() . "\n"); 
    print('Type is:' . $err['type'] . "\n"); 
    print('Code is:' . $err['code'] . "\n"); 
    // param is '' in this case 
    print('Param is:' . $err['param'] . "\n"); 
    print('Message is:' . $err['message'] . "\n"); 
} catch (\Stripe\Error\RateLimit $e) { 
    // Too many requests made to the API too quickly 
} catch (\Stripe\Error\InvalidRequest $e) { 
    // Invalid parameters were supplied to Stripe's API 
} catch (\Stripe\Error\Authentication $e) { 
    // Authentication with Stripe's API failed 
    // (maybe you changed API keys recently) 
} catch (\Stripe\Error\ApiConnection $e) { 
    // Network communication with Stripe failed 
} catch (\Stripe\Error\Base $e) { 
    // Display a very generic error to the user, and maybe send 
    // yourself an email 
} catch (Exception $e) { 
    // Something else happened, completely unrelated to Stripe 
}