【问题标题】:Prevent from resubmit payment form after confirmation确认后防止重新提交付款表格
【发布时间】:2016-07-18 11:01:10
【问题描述】:

我正在开发条纹支付网关,用户可以在其中填写运输和信用卡表格并提交。我在同一页面上设置了确认消息。但问题是如果用户再次刷新该确认页面,那么它将重新提交并产生问题。

我应该重定向到感谢页面还是其他?

有什么建议或无论如何可以确保该过程的安全吗?

谢谢

【问题讨论】:

  • 您可以使用验证码避免用户在提交后点击F5
  • 这是个好主意,也谢谢其他方式?
  • @JigneshBhavani 另一种解决方案是 CSRF 令牌和会话,与验证码类似,但不可见。
  • 我假设您创建了用户填写付款详细信息的表单。我会确保表单上有一个唯一的 GUID。当我处理付款时,我会在记录为已处理的数据库中存储并输入该 GUID。如果它返回,则通知用户它已经被处理。为什么?每个付款表单都是唯一的,因此不能重复处理。

标签: php forms stripe-payments


【解决方案1】:

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

您可以为每个表单提交使用令牌。使用同一个令牌后,优雅退出

【讨论】:

  • 但这没有购物车系统,我的意思是用户直接购买任何物品并付款。这意味着我没有在会话中存储任何事务 ID。我知道这听起来很菜鸟。
  • @AbuMusab 但是当你点击键盘上的backspace 按钮时,它会将你送回提交页面,你仍然可以刷新
猜你喜欢
  • 2017-07-21
  • 2014-12-08
  • 2018-03-18
  • 1970-01-01
  • 2014-04-30
  • 2012-12-17
  • 2011-10-13
  • 1970-01-01
相关资源
最近更新 更多