条纹创建帐户并收取卡
Posted
技术标签:
【中文标题】条纹创建帐户并收取卡【英文标题】:stripe create account and charge a card 【发布时间】:2018-12-27 17:33:35 【问题描述】:尝试与 Stripe 合作创建帐户、从卡中扣款并注册 15-30 天后开始的订阅。
我想做的是:
1) 预先收集使用信息(电子邮件、地址、名字/姓氏、卡信息等),这些信息将在条带上和我的数据库中添加一个客户。
2) 进行初始费用(不是订阅费用),如果通过将在 stipe 和我的数据库上创建帐户。
3) 确保我的数据库中有 Stipe 的客户信息,以便日后向 cade 收费。还没有决定我是要按月收费还是让 Stripe 来做。
4) 如果订阅付款结束(由于信用卡月费不良或其他原因),请限制用户在登录时看到的内容。这就是为什么我想运行一个 cron,如果它被标记为需要付款,请执行有限的视图。
提前感谢您的帮助和建议!
【问题讨论】:
聘请开发人员,所以不是代码编写服务。请拨打tour。或者,您可以向我们展示您现有的代码并具体说明您面临的问题,我们可以帮助您解决问题。 我们会为您设计、开发和实施吗?你的代码在哪里? 不,获得建议,第一次使用 Stipe。我把这些步骤作为参考来展示我的计划。只是想更好地掌握条纹...... 【参考方案1】:显然我得罪了几个人。我也忘了提到我正在尝试使用 AJAX 来做这件事,这是我试图解决的主要问题。
我实际上找到了一些相关链接,最后,这似乎将我指向了我正在寻找的正确方向。这主要是我想要的。
以下是迄今为止对我有帮助的链接。希望他们帮助任何寻找相同事物的人。
https://youtu.be/EildM6OMcoQ
不知道为什么这个最终出现在我的搜索中?猜猜我的搜索没有正确分阶段...
Make a Stripe payment with Jquery AJAX? (javascript ONLY)
还有一两个链接,但我必须找到它们。找到后我会添加它们....
这是我的测试脚本,主要用于检查令牌传递... 需要了解如何使其与 STRIPE 一起使用 V3 API...
Form.php
<?php session_start(); ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title>Stripe Getting Started Form</title>
<!-- The required Stripe lib -->
<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
<!-- jQuery is used only for this example; it isn't required to use Stripe -->
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
// This identifies your website in the createToken call below
Stripe.setPublishableKey('__YOUR__PUBLIC__HERE__);
var stripeResponseHandler = function(status, response)
var $form = $('#payment-form');
if (response.error)
// Show the errors on the form
$form.find('.payment-errors').text(response.error.message);
$form.find('button').prop('disabled', false);
else
// token contains id, last4, and card type
var token = response.id;
// Insert the token into the form so it gets submitted to the server
$form.append($('<input type="hidden" name="stripeToken" />').val(token));
// and re-submit
//$form.get(0).submit();
// Serialize the form
var data=$('#payment-form').serialize();
// Send form to server with POST method
$(function()
$.ajax(
type: "POST",
url: "./testphp.php",
data: data,
success: function(returndata)
$form.find('button').prop('disabled', false);
$('.payment-errors').text(returndata);
);
);
// Prevent page from refreshing
return false;
;
// ONCLICK RESPONSE
jQuery(function($)
$('#thebutton').on('click', function(e)
var $form = $('#payment-form');
// Disable the submit button to prevent repeated clicks
$form.find('button').prop('disabled', true);
Stripe.card.createToken($form, stripeResponseHandler);
// Prevent the form from submitting with the default action
return false;
);
);
</script>
</head>
<body>
<?php
//$_SESSION['token'] = "12345";
echo $_SESSION['token']; // will only show if page is reloaded
// will not be the same as new token
// used to check against after submit
?>
<h1>Charge $10 with Stripe</h1>
<form action="" method="POST" id="payment-form">
<span class="payment-errors"></span>
<div class="form-row">
<label>
<span>Card Number</span>
<input type="text" size="20" data-stripe="number" value="424242424242424"/>
</label>
</div>
<div class="form-row">
<label>
<span>CVC</span>
<input type="text" size="4" data-stripe="cvc" value="424" />
</label>
</div>
<div class="form-row">
<label>
<span>Expiration (MM/YYYY)</span>
<input type="text" size="2" data-stripe="exp-month" value="01"/>
</label>
<span> / </span>
<input type="text" size="4" data-stripe="exp-year" value="2019"/>
</div>
<button type="submit" id="thebutton">Submit Payment</button>
</form>
</body>
</html>
testphp.php
<?php
// Start the session
session_start();
// Store the received token string in a session variable
if($_POST)
$_SESSION['token']=$_POST['stripeToken'];
echo $_POST['stripeToken'];
echo "\n";
print_r($_SESSION);
?>
我还有很多其他事情需要解决,但这主要是我寻求建议的方向......
【讨论】:
以上是关于条纹创建帐户并收取卡的主要内容,如果未能解决你的问题,请参考以下文章