у меня есть корзина с товарами, я делаю проверку при добавлении товара на его наличие в корзине, если он существует - увеличивается количество добавленного товара.
if(isset($_POST['add'])){
echo "<script>window.location='shop.php'</script>";
if(isset($_SESSION['cart'])){
$item_array_id = array_column($_SESSION['cart'], 'item_id');
if(!in_array($_GET['id'],$item_array_id)){
$count = count($_SESSION['cart']);
$item_array = array(
'item_id' => $_POST['hidden_id'],
'item_img' => $_POST['hidden_img'],
'item_name' => $_POST['hidden_name'],
'item_price' => $_POST['hidden_price'],
'item_count' => $_POST['count']
);
$_SESSION['cart'][$count] = $item_array;
// echo "<script>window.location='shopcart.php'</script>";
}
else{
foreach($_SESSION['cart'] as $keys => $value){
if($value['item_id'] == $_GET['id']){
$value['item_count'] += $_POST['count'];
logReq($value['item_count']);
}
}
}
}
Я попадаю в условие else и все операции отрабатывают, но я сталкиваюсь с тем, что $value['item_count'] не сохраняется. Как решить этот вопрос?
Думаю этот код тебе поможет
<?php
class Cart
{
public static function addProduct($id,$count = 1)
{
$id = intval($id);
$productsInCart = array();
if (isset($_SESSION['products'])) {
$productsInCart = $_SESSION['products'];
}
if (array_key_exists($id, $productsInCart)){
$productsInCart[$id] += $count;
} else {
$productsInCart[$id] = $count;
}
$_SESSION['products'] = $productsInCart;
return self::countItems();
}
public static function countItems()
{
if (isset($_SESSION['products'])) {
$count = 0;
foreach ($_SESSION['products'] as $id => $quantity) {
$count = $count + $quantity;
}
return $count;
} else {
return 0;
}
}
public static function getProducts()
{
if (isset($_SESSION['products'])) {
return $_SESSION['products'];
}
return false;
}
public static function clear()
{
if (isset($_SESSION['products'])) {
unset($_SESSION['products']);
}
}
public static function deleteProduct($id)
{
$productsInCart = self::getProducts();
unset($productsInCart[$id]);
$_SESSION['products'] = $productsInCart;
}
}
https://webzone.kz/kz/publication/php-session
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Нужно вывести статистику по неделямДля этого желателен массив с неделями по дням