这是我的customers_basket
桌子的样子:
customers_id | products_id | basket_quantity
3 | 56:3121fefbe6043d6fc12e3b3de2c8fc38 | 3
3 | 56:fb4c9278fcfe6225b58c06711a7e62ef | 1
3 | 56:8e334fce09556108f5416e27154b6c27 | 1
3 | 52:f3b9f38e4ddd18035bc04cd264b0f052 | 1
这是我正在使用的查询:
$products_in_cart_query = "SELECT products_id FROM customers_basket WHERE customers_id = " . $_SESSION['customer_id'] ."";
$products_in_cart = $db->Execute($products_in_cart_query);
$products_in_cart_model = $products_in_cart->fields['products_id'];
$products_in_cart_model = substr($products_in_cart_model, 0, strpos($products_in_cart_model, ":"));
我得到的最终结果是 56,56,56,52
首先,如何使用第一行的数量字段?我需要列出 products_id 3 次,因为数量是 3。因此,最终结果需要是:56,56,56,56,56,52 或者,为了更容易理解 (56,56,56),56, 56,52
其次,我如何计算我有多少相同的值?在这种情况下,我有 5x56 和 1x52。我需要在我的进一步计算中使用这些计数。
编辑:进一步的计算解释了我需要知道每个 product_id 我有多少,然后运行这样的东西:
foreach(product_id) {
$shipping_cost += FIXED_VALUE * basket_qty;
}