我正在构建一个简单的电子商务来处理我的订单请求(这是一个不同的电子商务,因为我将销售印刷电路板)。
所以,最大的问题是:当用户结账时,购物车中有商品,我应该做什么:
pending
并等待付款公司(如PayPal,但来自巴西)付款对此的疑问,是因为在付款之前下订单,可能会在数据库中创建大量未付款的订单(一些临时清理应该可以)。
付款后下订单可能会很困难,因为付款公司只返回我几个字段(每个印刷电路板我都有很多字段)。
也许我已经给出了“答案”,但我对此真的很困惑,我会很感激第二个意见......
谢谢
好吧,逻辑地思考一下。当下订单时,无论订单最终是否会通过,您都希望存储订单的信息。原因有很多:
...以及其他用途。
由此,您可以得出结论,您肯定要存储挂单。将信息存储在单独的数据库/表中是没有意义的。
您应该意识到的一件重要的事情是,即使从未完成的挂单也可以用于其他目的,因此它们应该包含在其余已完成的订单中。
我过去做过的是:
通过这种方式,您还可以跟踪任何奇怪的差异,例如拒绝的交易(例如被盗的卡)。
这确实是一个设计选择,但如果您不想处理用户未付款的订单,那么在用户付款后下订单似乎相当合乎逻辑。
所以, 用户付款 - >将订单添加到数据库,然后跟踪您需要的任何其他信息。
我能想到的唯一一个你想事先添加到数据库的例子是愿望清单的情况
1.首先在确认页面上将订单存储在数据库中,即在用户进入付款页面之前。 2.如果订单成功则更新订单状态为成功。显示具有唯一 order_id 的成功消息 如果订单失败,则将订单状态更新为失败。显示失败消息。 如果用户取消付款,应重定向取消消息,并在数据库中取消订单状态。
存储所有订单是一件好事,因为您有跟踪订单或失败订单供用户查询,或者您可以将消息待处理状态订单发送给comp