Php 防止在确认后重新提交付款单

Php 防止在确认后重新提交付款单,php,forms,stripe-payments,Php,Forms,Stripe Payments,我正在开发stripe支付网关,用户在其中填写发货和信用卡表单并提交。我在同一页上设置了确认消息。但问题是,若用户再次刷新确认页面,那个么它将重新提交并产生问题 我应该转到“谢谢你”页面还是其他页面 有什么建议或其他方法来确保这一过程 谢谢您可以根据自己的要求执行以下操作: -将用户重定向到感谢页面或交易详细信息页面,您可以在其中显示他/她的交易状态以及ref# 专业提示:这对他来说应该是有效的。使用会话id显示事务详细信息。您应该检查transactionId和sessionId 或 您可以为

我正在开发stripe支付网关,用户在其中填写发货和信用卡表单并提交。我在同一页上设置了确认消息。但问题是,若用户再次刷新确认页面,那个么它将重新提交并产生问题

我应该转到“谢谢你”页面还是其他页面

有什么建议或其他方法来确保这一过程


谢谢

您可以根据自己的要求执行以下操作: -将用户重定向到感谢页面或交易详细信息页面,您可以在其中显示他/她的交易状态以及ref# 专业提示:这对他来说应该是有效的。使用会话id显示事务详细信息。您应该检查transactionId和sessionId


您可以为每个表单提交使用令牌。一旦使用了相同的令牌,请优雅地退出

您可以使用captcha的可能副本,以避免用户在提交后点击
F5
。这是一个好主意,还要感谢任何其他方式?@JigneshBhavani另一个解决方案是CSRF令牌和会话,与captcha类似,但是不可见。我假设您创建了用户填写的表单,其中包含付款详细信息。我会确保表单上有唯一的GUID。当我处理付款时,我会在记录为已处理的数据库中存储和输入该GUID。如果它返回,则通知用户它已被处理。为什么?每个付款单都是唯一的,因此不能处理两次。但这是没有购物车系统的,我的意思是用户直接购买任何物品并付款。这意味着我没有在会话中存储任何事务id。我知道这个声音是noob。@abumasab但是当你点击键盘上的
退格按钮时,它会把你送回提交页面,在那里你仍然可以刷新