php 中的购物车,带有会话和数据库
shopping cart in php with session & database
我在 PHP 中使用会话和数据库开发了一个购物车。
如果用户未登录(访客),购物车商品将存储在 $_SESSION["cart"]
变量中。
如果用户已登录,$_SESSION["cart"]
中的所有购物车商品(如果有)都会被复制到数据库中,并且数据库中任何之前的购物车商品(如果有的话)也会被复制回 $_SESSION["cart"]
。在这里,我将在会话和数据库中保留副本。
只要用户已登录,我就不会遇到购物车商品的问题。
由于我正在为客人使用会话,所以一旦关闭浏览器,我肯定会丢失购物车详细信息。
我该如何克服这种情况?
我正在尝试使用唯一的 cookie 值将客人购物车的详细信息存储在数据库中。请提出建议?购物车 Table 详情:
cart_id*
user_id
product_id
product_option_id
product_count
total_amount
time_stamp
user_id+product_id+product_option_id is Unique
这是我要制作的程序流程。它很模糊,所以你可以随心所欲地实现它。
- 创建一个随机会话 ID,甚至可能与
Math.random()
. 一样简单
- 检查购物车的数据库以查看该 ID 是否已被占用。如果是,请返回步骤 1。
- 使用该会话 ID 和购物车 ID 在购物车数据库中创建一个条目。
- 使用该会话 ID 创建一个 cookie
$_COOKIE["carts"]
。
- 每次用户更新购物车(即添加或删除商品)时,检查会话 ID 的 cookie 并更改数据库中的信息。
- 提交购物车后,从 cookie 中检索会话 ID 并使用该会话 ID 检索数据库信息,然后使用数据库中的数据执行 PHP 购买(清空购物车)的魔术。
- 删除 cookie 并从数据库中删除条目。
我在 PHP 中使用会话和数据库开发了一个购物车。
如果用户未登录(访客),购物车商品将存储在 $_SESSION["cart"]
变量中。
如果用户已登录,$_SESSION["cart"]
中的所有购物车商品(如果有)都会被复制到数据库中,并且数据库中任何之前的购物车商品(如果有的话)也会被复制回 $_SESSION["cart"]
。在这里,我将在会话和数据库中保留副本。
只要用户已登录,我就不会遇到购物车商品的问题。
由于我正在为客人使用会话,所以一旦关闭浏览器,我肯定会丢失购物车详细信息。
我该如何克服这种情况?
我正在尝试使用唯一的 cookie 值将客人购物车的详细信息存储在数据库中。请提出建议?购物车 Table 详情:
cart_id*
user_id
product_id
product_option_id
product_count
total_amount
time_stamp
user_id+product_id+product_option_id is Unique
这是我要制作的程序流程。它很模糊,所以你可以随心所欲地实现它。
- 创建一个随机会话 ID,甚至可能与
Math.random()
. 一样简单
- 检查购物车的数据库以查看该 ID 是否已被占用。如果是,请返回步骤 1。
- 使用该会话 ID 和购物车 ID 在购物车数据库中创建一个条目。
- 使用该会话 ID 创建一个 cookie
$_COOKIE["carts"]
。 - 每次用户更新购物车(即添加或删除商品)时,检查会话 ID 的 cookie 并更改数据库中的信息。
- 提交购物车后,从 cookie 中检索会话 ID 并使用该会话 ID 检索数据库信息,然后使用数据库中的数据执行 PHP 购买(清空购物车)的魔术。
- 删除 cookie 并从数据库中删除条目。