gpt4 book ai didi

php - 将 session 数据写入数据库

转载 作者:行者123 更新时间:2023-11-30 23:31:29 26 4
gpt4 key购买 nike

我正在创建一个迷你购物车,我想知道是否有办法从 session 中获取数据并将其写入数据库。用户选择的部件应该添加到他们的购物车中。他们完成后,我如何获取存储到 session 中的数据,并将其写入数据库,以便他们再次登录时他们的购物车仍然存在?

<?php
if (isset($_GET['add'])) {
$quantity = mysql_query('SELECT partID, quantity, catergory FROM computerparts WHERE partID=' . mysql_real_escape_string((int) $_GET['add']));
while ($quantity_row = mysql_fetch_array($quantity)) {
if ($quantity_row['quantity'] != $_SESSION['index_' . $_GET['add']]) {
$_SESSION['index_' . $_GET['add']]+='1';
}
}
header('Location: ' . $page);
}

if (isset($_GET['delete'])) {
$_SESSION['index_' . (int) $_GET['delete']] = '0';
header('Location: ' . $page);
}

function cart() {
$total = "";
$sub = "";
foreach ($_SESSION as $name => $value) {
if ($value > 0) {
if (substr($name, 0, 6) == 'index_') {
$id = substr($name, 6, (strlen($name) - 6));
$get = mysql_query('SELECT partID, partName, price FROM computerparts WHERE partID=' . (int) $id);
while ($get_row = mysql_fetch_array($get)) {
$sub = $get_row['price'] * $value;
echo $get_row['partName'] . 'x' . $value . '@ &pound;' . $get_row['price'] . '=' . $sub . '<a href="index.php?delete=' . $id . '">Delete</a> <br />';
}
}
$total += $sub;
}
}
if ($total == 0) {
echo 'Your cart is empty';
} else {
echo 'Total: &pound' . $total;
}
}
?>

为了让事情变得更简单,我从这个网站上删除了一些功能。将不会购买任何元素,所有发生的事情是用户选择他想要的元素并保存该信息,以便在他希望您可以将其引用规范的任何时候访问。 (规范表)他选择的项目将被写入该表。使用当前登录的用户 ID。

最佳答案

法达米

您正在考虑将 session 数据存储在数据库中,因为如果用户将商品添加到它的购物车中,然后他在没有从您的购物车购买商品的情况下注销。

然后下次他来时我们必须向他展示该商品(您已将该商品添加到购物车但未购买...)

我认为这是你的逻辑......为此我有一个答案..

您可以将该特定购买项目存储在您的 purchase_item_by_user 表中,并带有“标记类型”Pending“。

所以每次你都必须检查列表中是否有待处理列表中的项目......(你也可以检查特定的日期或时间..)

在那之后,当用户购买该项目时,您可以将其标志更改为“已购买”,或者如果用户取消该项目,则您可以将标志设置为“已取消”..

这会帮助你...谢谢,塔伦马尔帕尼...

关于php - 将 session 数据写入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10394140/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com