laimas, вот у меня есть сессия
$_SESSION['cart'] = array()
А мне, получается, нужно записывать этот массив таким образом?
$_SESSION['cart'] = array(
209 => array(
'count' => 3,
'price' => 1500,
'prop' => array('size'=>array(42 => 2, 41 => 1), 'name' => 'Галоши')
),
150 => array(
'count' => 2,
'price' => 1000,
'prop' => array('size'=>array(40 => 1, 41 => 1), 'name' => 'Туфли')
)
);
И у меня, получается, много лишнего написано? Этот кэйс :
case('add_to_cart'):
$id = $_GET['id'];
$size = $_GET['size'];
$_SESSION['cart_size'][$id] = $size;
$add_item = add_to_cart($id);
$_SESSION['total_items'] = total_items($_SESSION['cart']);
$_SESSION['total_price'] = total_price($_SESSION['cart']);
header('Location:index.php?view=product&id='.$id);
break;
И вот это, функция добавления в корзину:
function add_to_cart($id, $size)
{
if(isset($_SESSION['cart'][$id]))
{
$_SESSION['cart'][$id]++;
return true;
}
else
{
$_SESSION['cart'][$id] = 1;
return true;
}
return false;
}
А как же быть с этими функциями подсчёта общего количества и общей суммы?:
function total_items($cart)
{
$num_items = 0;
if(is_array($cart))
{
foreach($cart as $id => $qty)
{
$num_items += $qty;
}
return $num_items;
}
}
function total_price($cart)
{
$total_price = '0.00';
global $link;
if(is_array($cart))
{
foreach($cart as $id => $qty)
{
$result = $link->query("SELECT price FROM products WHERE id='$id' ");
if($result)
{
$item_price = mysqli_fetch_assoc($result);
$total_price += $item_price['price'] * $qty;
}
}
return $total_price;
}
}
В общем, что делать???? Как исправляться???? Неужели потратил год в пустую????