Страница 1 из 1

Корзина интернет-магазина

СообщениеДобавлено: Сб ноя 05, 2011 22:27
PETERs602
Корзина в большинстве случаев реализуется путем сохранения массива с товарами в сессию, и сохранением данного массива в БД после оформления заказа.

Примеры позаимствованы с http://forum.php.su/topic.php?forum=74&topic=1446&p=1

Re: Корзина интернет-магазина

СообщениеДобавлено: Сб ноя 05, 2011 22:34
PETERs602
Добавление товара в корзину:
Код: Выделить всё
<?PHP
//Добавление товара в корзину
session_start() ;
if($_SESSION['cart']){
        $cart = $_SESSION['cart'] ;
} else $cart = array() ;

$item_id = 123456 ; //ид товара
$item_count = 1 ; //количество товара

$cart[$item_id] = $item_count ; // тут добавление
$_SESSION['cart'] = $cart ;
?>

<?PHP
//Вывод товара из корзины
session_start() ;
$cart = $_SESSION['cart'] ;
foreach($cart as $item_id=>$item_count) {
        echo "ID товара: $item_id , количество: $item_count " ;
}
?>


http://forum.php.su/topic.php?forum=74&topic=1446&p=1

Re: Корзина интернет-магазина

СообщениеДобавлено: Сб ноя 05, 2011 22:34
PETERs602
Удаление товаров(элементов массива из сессии)
Код: Выделить всё
<?PHP
function delete_id($cart, $id){
//$cart - твоя корзина
//$id - ид товара, который нужно удалить
$temp = array() ; // временная "корзина"
        foreach($cart as $key=>$value){ //перебираем все товары в корзине
                if($key != $id){ //если текущий id товара не совпадает с удаляемым id то заносим его
                //во временную корзину
                        $temp[$key] = $value ;
                }
        }
return $temp ; // и возвращаем массив(корзину) с товарами
}
//удалять так:
$cart = $_SESSION['cart'] ; // Для наглядности
$id = '135255' ; //ИД товара, который нужно удалить из корзины
$cart = delete_id($cart, $id) ; // Тут удаляем
$_SESSION['cart'] = $cart ; // пихаем обратно в сессию корзину
?>