所以我能够添加Stipe checkout没问题,并且效果很好(适用于一种产品)。
<form action="/load-funds/" method="post">
<input type='hidden' name='fund_amount' value='9600' />
<script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="<?php echo STRIPE_PUBLIC_KEY; ?>"
data-description="Buy 3 Hours"
data-amount="9600"
data-locale="auto"
data-label="Buy 3 Hours"
data-name="3 Hours"
></script>
</form>
我要做的是为客户提供6种选择,将资金加载到他们的系统中(3小时,6小时,9小时等)
但是我希望所有资金(例如/ load-funds /)的回调页面保持相同。
如何从php端区分不同类型的事务?
if (!empty($_POST['stripeToken']) && !empty($_POST['stripeEmail'])) {
$customer = \Stripe\Customer::create([
'email' => $email,
'source' => $_POST['stripeToken'],
]);
$fund_amount = $_POST['fund_amount'];
$charge = \Stripe\Charge::create([
'customer' => $customer->id,
'amount' => $fund_amount,
'currency' => 'usd'
]);
add_funds($fund_amount);}
我正在使用以下形式的简单变量(数据量)...它可以工作...但是我担心这可能会被黑客入侵。一定有更好的方法可以做到这一点?许多购物车使用Stripe,并且在同一页面上有多个产品。如果我提取输入变量($ _POST ['stripeToken']或$ _POST ['stripeEmail']),则看不到任何可以区分实际购买的产品。
任何帮助将不胜感激!