PHP在线购物商店

PHP在线购物商店,php,mysql,shopping-cart,Php,Mysql,Shopping Cart,我正在开发一个在线购物商店,但我不知道在顾客结账并真正付款的时候,什么是确保产品可用的最佳方法 比方说,我有2个物品XX,我在购物车中添加了1个,我应该在什么时候在数据库中预先预订该物品?当客户端单击checkout并生成paypal链接时?如果客户从未付款,我如何再次提供该商品?如果客户等待太长时间才付款 我想知道这个过程是如何完成的 更新 我目前只在生成paypal链接以便客户可以付款时才这样做(将项目添加到保留项目列表),然后我将其添加到保留项目数据库。这是我的问题?如何在paypal中设

我正在开发一个在线购物商店,但我不知道在顾客结账并真正付款的时候,什么是确保产品可用的最佳方法

比方说,我有2个物品XX,我在购物车中添加了1个,我应该在什么时候在数据库中预先预订该物品?当客户端单击checkout并生成paypal链接时?如果客户从未付款,我如何再次提供该商品?如果客户等待太长时间才付款

我想知道这个过程是如何完成的

更新 我目前只在生成paypal链接以便客户可以付款时才这样做(将项目添加到保留项目列表),然后我将其添加到保留项目数据库。这是我的问题?如何在paypal中设置timout,使链接仅在X分钟内有效?如果时间超过X分钟,如何从数据库中删除该项?使用cron作业和php文件? 我的问题是,有人保留和项目,从来没有支付,该项目保持保留永远或保留和项目和支出需要太长的时间,其他人购买它

更新2
真正的项目是一个本地SQL server数据库,商店与一个基于web的mysql服务器一起工作,因此我必须同步其中的两个,因为我无法修改SQL server数据库,我只能在最终完成时在那里添加订单。

根据您希望系统如何工作,有很多方法可以实现这一点。
一种方法是为购物车创建一个表,其中包含客户购物车的所有信息。此外,您可以为每个购物车指定一个超时。当客户将商品添加到购物车中时,不应直接降低数据库中商品的可用性。相反,网页上显示的可用性应根据tem可用性计算,即此商品在所有购物车中的数量。

这是您设计工作的一部分。没有“正确答案”。但我看到一些网站将商品预订半小时,让您有足够的时间退房,然后再将其返回商店库存(并自动取消订单)。其他人会在你退房时做最后的可用性检查,如果你太慢了会道歉。选择一种适合你的方式!这是一个复杂的问题,他们的回答不是绝对的。在考虑技术问题之前,你必须做出选择:我应该在什么时候预订商品。您的客户可以支付多长时间,如果您必须在付款前告诉客户该商品不再可用,这是否是一个问题,等等。有些地方会出现负库存,然后告诉用户由于需求量大,将延迟发货,并给他们取消订单的选项。如果这种情况很少发生,这可能是一个不错的解决方案。我目前只在生成paypal链接以便客户可以付款时才这样做……我将其添加到保留项目数据库中。这是我的问题?如何在paypal中设置timout,使链接仅在X分钟内有效?如果时间超过X分钟,如何从数据库中删除该项?使用cron作业和php文件?我目前只在生成paypal链接以便客户可以付款时才这样做(将项目添加到保留项目列表),并将其添加到保留项目数据库表中。这是我的问题?如何在paypal中设置timout,使链接仅在X分钟内有效?如果时间超过X分钟,如何从数据库中删除该项?使用cron作业和php文件?我的问题是有人预订商品却从不付款,而该商品却永远保留,或者预订商品并付款花费的时间太长,以至于其他人无法购买。您可以使用会话或在购物车表中定义超时。这不是问题所在,假设客户添加产品并结帐,但他从不付款,关闭页面并删除所有cookies。如何从数据库中删除该保留项?php+cron作业?如果您定义购物车的超时,就不必担心清理购物车。例如,如果要计算商品的可用性,可以在products表中获取商品的可用性,然后减去购物车中保留的未过期(即未超时)商品的数量。您可以手动或按计划作业清理购物车表。