ショッピング サイトのコーディング中に、製品在庫を更新する必要があります。しかし、当然のことながら、ショッピング カートには同じアイテムが数回含まれる可能性があります。それを更新するための最良の方法は何ですか?
試してみIN
ましたが、次の SQL クエリは 3 つのアイテムを返します。
SELECT *
FROM `products`
WHERE id
IN ( 3, 4, 4, 6 )
LIMIT 0 , 30
これが私の解決策ですが、これが最善の解決策だとは思いません。
$cart = array(1,3,4,4,5,8,22,22);
$itemlist = array_count_values($cart);
foreach($itemlist as $itemid=>$ocurrence){
$SQL = "UPDATE products SET stock = stock-".$ocurrence." WHERE id = ".$itemid;
mysql_query($SQL);
}