我有一个带有购物车系统的网站,问题是我们有一些成员点击了删除项目按钮,该按钮使用“已删除”标志更新行项目 - 然后点击浏览器返回按钮,然后显示购物车之前的状态 - 订单项完好无损。
如果他们在这种状态下付款,当销售被处理为他们支付的多个项目之一没有得到处理时,我们会遇到各种问题。这意味着我们必须在以后手动拾取碎片。
是否有任何标准方法来处理这种情况——即我知道我们可以提供一个“撤消”按钮——但用户并不总是会使用它。
我有一个带有购物车系统的网站,问题是我们有一些成员点击了删除项目按钮,该按钮使用“已删除”标志更新行项目 - 然后点击浏览器返回按钮,然后显示购物车之前的状态 - 订单项完好无损。
如果他们在这种状态下付款,当销售被处理为他们支付的多个项目之一没有得到处理时,我们会遇到各种问题。这意味着我们必须在以后手动拾取碎片。
是否有任何标准方法来处理这种情况——即我知道我们可以提供一个“撤消”按钮——但用户并不总是会使用它。
我将详细说明我最终得到的解决方案,以防其他人有类似的问题。
我们的支付网关提供了一种将自定义信息传递到我们的支付流程系统的方法,我们计划传递购物车中所有商品的 id,当我们取回它们时,我们将使用它来取消删除已删除的项目。
这使用首先导致问题的相同过程起作用,因为购物车页面不会重新加载到浏览器上。
这是假设通过按下后退是用户试图撤消他的操作,因为在销售之前确认支付价值,我们可以合理地确定如果购物车被推动,那么购物车就是用户想要的。
我们还提供撤消系统以及 javascript 后退保护以防止需要它,在这些情况下,有 10 种解决方案比一种更好。