未定义索引: stripetoken . 我是一个Stripe的初学者,我不能在laravel中连接stripe。

问题描述 投票:0回答:1
PaymentController:

class PaymentController extends Controller
{
public function paymentProcess()
{
\Stripe\Stripe::setApiKey("sk_test_1M123Dge214GicrsW30adwG12X1");
$token=$_POST['stripetoken'];
$charge=\Stripe\Charge::create([
'amount'=>1000,
'currency'=>'usd',
'description'=>'Example charge',
'source'=>$token,
]);
}
}


index.blade.php:

<div class="content">
    <div class="title m-b-md">
        Laravel + Stripe
    </div>
    <div class="links">
        <form action="/api/payment" method="POST">
        <script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
         data-key='pk_test_zWfsa5k3D21cq1hPA39FmIdMJfkG3Taf74LD'
        data-amount="100000"
         data-name="My Name"
          data-description="Test" 
          data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
        data-locale="auto" 
        data-currency="USD">
    </script>
        </form>
    </div>
</div>

api.php:

Route::post('/payment','PaymentController@paymentProcess');

它一直给我这个错误Undefined index: stripetoken,在我的stripe测试仪表板上,它仍然是0,没有添加任何钱。任何帮助是非常感激的,谢谢你在前面。

laravel stripe-payments
1个回答
0
投票

你可以使用Laravel请求来获取POST数据到你的控制器:

use Illuminate\Http\Request;
class PaymentController extends Controller
{
    public function paymentProcess(Request $request)
    {
        \Stripe\Stripe::setApiKey("sk_test_1M123Dge214GicrsW30adwG12X1");
        $token = $request->get('stripetoken');
        $charge = \Stripe\Charge::create([
            'amount' => 1000,
            'currency' => 'usd',
            'description' => 'Example charge',
            'source' => $token,
        ]);

注意: 你可以使用Laravel请求来获取POST数据到你的Controller: 注

你应该始终验证你的请求,以确保数据在那里。

© www.soinside.com 2019 - 2024. All rights reserved.