[英]cart session to save products by size
我有這個代碼可以將產品保存在購物車中。 我需要保存產品和尺寸 - 數量 x 價格。 此時正在存儲產品名稱、尺寸、數量和價格,但它顯示同一行。 如果我添加“product1”尺寸 M 數量 1,如果我添加“product1”尺寸 S 數量 1,在購物車中我會得到“product1”尺寸 S(添加的最后一個尺寸)數量 1(但在 tquan 中我得到 2 個產品)。 那么我怎樣才能讓每個尺寸的產品都有另一排。
$_SESSION['CART']['order_token'] = $form_token;
$arrCart['id'] = $pID;
$arrCart['quantity'] = $_SESSION['CART']['PRODUCT'][$pID]['size']['quantity'] + $_POST['quantity'];
$chkQuan = mysqli_fetch_assoc(mysqli_query($link, "SELECT quantity FROM table WHERE id = '".$pID."'"));
$total =$_SESSION['CART']['tquan']+$_POST['quantity'];
$arrCart['pret'] = $_POST['product_price'];
$arrCart['size'] = $_POST['size'];
$_SESSION['CART']['tquan'] = $total;
$_SESSION['CART']['PRODUCT'][$pID] = $arrCart;
這部分用於展示購物車
if(isset($_SESSION['CART']) && $_SESSION['CART']!='')
{
$endsumm = '';
$product_total_price = '';
foreach($_SESSION['CART']['PRODUCT'] as $pID=>$pArr)
{
$prod = mysqli_fetch_assoc(mysqli_query($link, "SELECT * FROM table WHERE id='".$pID."'"));
$product_total_price = $pArr['quantity']*$pArr['pret'];
$endsumm += $pArr['quantity']*$pArr['pret'];
在將產品放入購物車之前,您應該檢查產品是否已經在購物車中。
$total =$_SESSION['CART']['tquan']+$_POST['quantity'];
$arrCart['pret']= $_POST['product_price'];
$arrCart['size']= $_POST['size'];
$_SESSION['CART']['tquan'] = $total;
$_SESSION['CART']['PRODUCT'][$pID] = $arrCart
if(!in_array($pID, array_map(function($id){return $id[$pID];}, $_SESSION['CART']))){
if(!in_array($_POST['size'], array_map(function($size){return $size['size'];}, $_SESSION['CART']))){
//Here insert the product into the cart as you were inserted in the question
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.