我正在尝试在购买之前检查sessionbasket(并检查数据库存储是否包含来自会话的相同单位)
foreach($_SESSION['cart'] AS $key => $qty){
$sizes_id[] = $qty['units'];
}
会话输出:
Array(
[0] => 1 (units)
[1] => 5 (units)
)
假设db中有最多2个单元,会话中有5个单元。我需要遍历数据库并检查会话是否是相等的会话输出。如果为true,则插入到db else,重定向前面
答案 0 :(得分:1)
按降序对单位数组进行排序。
然后按降序从数据库中获取单位。应该给你相同的阵列。这是一个类似于您需要的查询:
SELECT id, units FROM article_sets WHERE article_id=XXX ORDER BY units DESC
答案 1 :(得分:0)
我需要遍历数据库 并检查会话是否是平等会话 输出。如果为true,则插入到db else, 重定向前方
听起来你知道自己想做什么。
那你在问什么?你想让别人为你编码吗?
答案 2 :(得分:0)
我找到了解决方案。
foreach ($_SESSION['cart'] AS $sizes_id => $qty){
$in_stock = $db->GetScalar("SELECT s.units FROM products_sizes s
INNER JOIN products p ON p.product_id = s.product_id
WHERE s.id = '$sizes_id'
");
}
这是我正在寻找的部分,它有效 - >
if ($in_stock == 0 || $_SESSION['cart'][$sizes_id]['units'] > $in_stock){