【问题标题】:Shopping cart (php)购物车 (php)
【发布时间】:2015-06-09 06:09:55
【问题描述】:

我目前正在为某个主题开发一个购物车项目 rn。这就是我实现购物车的方式

  1. 产品是从 xml 文件中读取的(我对如何使用 sql 还没有太多了解...),包含以下详细信息:prodID、prodName、prodDesc、prodPrice 和 prodStock

  2. 每次用户将商品添加到购物车时,都会在 xml 文件中更新商品的相应库存。

其他事情:我正在使用会话变量 $_SESSION['items'],它是用户的购物车。这个会话变量是一个对象数组,Product,它包含以下内容:prodID、prodName、prodPrice、prodQTY(用户想要的数字)。我没有在这里实现登录系统,因为它可能会让用户很烦,IMO。

当用户购买他加入购物车的产品时,没有问题。但是,每当用户放弃购物车(通过浏览器关闭或其他方式)时,所述商品的库存不会恢复到其原始状态。有什么方法可以让我跟踪购物车遗弃的情况吗?或者我的实现有什么需要改变的?

【问题讨论】:

    标签: php shopping-cart


    【解决方案1】:

    我的建议是在用户完成结帐流程之前不要更改库存水平。

    在他们确认购买之前,商家和客户都没有签订合同,因此库存水平不应改变。

    【讨论】:

    • 但是 irl,当您从商品货架上获得一件商品时,假设这是该商品货架上该商品的最后一件,其他购物者将无法再从您那里获得该商品(除非您放弃它或......其他购物者强行从你那里得到它)。我的观点是,一旦从购物车中添加了一个项目,货架上的库存应该被扣除,如果用户决定放弃购物车或从购物车中删除一个项目,购物车中的项目将返回各自的货架。 (如果用户不提交,则回滚)。
    • 是的。但是,从盘点的角度来看,商店在结账之前不会将其从库存中移除。警告客户只剩几件库存就足够了。然后,他们处于比赛场景中。
    • 如果是这种情况,那么我认为您希望我拥有以下实现: 1. 用户将商品添加到购物车(比如说 40 件)。 2. 用户进行结账 3. 库存已更新 4. 如果其他用户结账的数量超过库存,则会向该用户显示提示
    • 是的,基本上。在我看来,当有人只表现出兴趣时减少可用库存对一个表现出兴趣的客户有利,但对其他人不利。这对您不利,因为如果他们不购买但其他人会购买,您将失去一笔销售,这对其他客户不利,因为他们可能会错过购买机会。这有意义吗?
    • 是的,确实有道理。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 2015-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-11
    相关资源
    最近更新 更多