php – 购物车和库存管理
作者:互联网
我目前正在使用PHP / MySQL构建一个电子商务网站.最近,我一直致力于购物车的整合.客户希望确保股票可供潜在买家使用,因此我创建了库存管理系统.购物车的工作原理如下:
>客户添加一定数量的项目
他的车.
>项目数量保留自
数据库中的可用库存.
>没有人可以购买保留
股票.
>库存仍然保留到客户端
处理订单 – 然后库存
从数据库中删除.
>如果客户放弃购物车,库存仍然保留.
>如果另一个客户希望购买一个商品,但只有另一个客户保留可用库存,那么如果预订库存已停用20分钟,则客户可以窃取该库存.
我的问题是,这种情况的最佳做法是什么?我这样做了吗?主要的是客户不想出售他没有的股票.
我希望讨论如何改进功能,或者其他人正在做些什么来实现这一目标.
解决方法:
另一种方法可能是在将库存放入购物车时预留库存.每次重新加载页面时都要进行检查,如果该项目不再可用,请显示“您想要购买的商品刚刚售完的消息.很快就会提供”.然后从购物车中删除产品.
现在,您必须在开始付款操作之前保留购物车内容,然后根据付款的成功/失败将其从库存中删除或删除储备.您可以在一次代码运行中做得更好,以便保留尽可能短暂.
ProcessOrder ()
{
bool reserved = ReserveShoppingCartContents ();
if (reserved)
{
bool paymentStatus = ProcessPayment ();
if (paymentStatus)
RemoveShoppingCartContentsFromStock ();
else
ReleaseShoppingCartReserve ();
}
else
{
RefreshShoppingCartContents (); // Remove positions or adjust quantities
MessageBox ("Could not reserve your shopping cart contents. Please check out your selection");
}
}
您的储备持续时间越长,您的物品实际售出的可能性就越大.您最小化冲突的可能性:CustomerA从购物车开始,物品被保留,CustomerB来,看到物品没有库存并且消失,CustomerA决定他不喜欢价格并取消操作.您有两个潜在客户,但无法销售.
标签:shopping-cart,php,mysql,e-commerce 来源: https://codeday.me/bug/20191004/1852875.html