Как вывести общее количество товаров? PHP

У меня возникла проблема. Я написал корзину товаров, все вроде прекрасно работает, но я не могу сделать одну вещь: "Вывод общего количества товаров". Подскажите пожалуйста, как это сделать.

    if ($action == "show") {
    if (!(isset($_SESSION['cart']))) {
        echo "У вас нет товаров";
        die();
    }
    $cart = $_SESSION['cart'];
    if (count($cart) == 0) {
        echo "У вас нет товаров";
        die();
    }
    $cnt = array();
    foreach ($cart as $id => $value) {
        $sql = "SELECT * FROM `tovar` WHERE `id` = '$id'";
        $sql_result = mysqli_query($dbhandle, $sql);
        $cnt[$id] = $value;
        while ($row = $sql_result->fetch_assoc()) {
            echo "
                <p>Идентификатор товара: ".$row['id']."</p>
                <p>Наименование товара: ".$row['name']."</p>
                <p>Количество товара: ".$value."</p>
                <p>Стоимость товара: ".$row['cost']."</p>
                <p>Описание товара: ".$row['desc']."</p>
                <input type='button' value='Удалить товар из корзины' onclick='delFromCart(".$row['id'].")'>
                <input type='button' value='+' onclick='plustovar(".$row['id'].")'>
                <input type='button' value='-' onclick='minustovar(".$row['id'].")'>
                ";
        }
    }
}

if ($action == 'add') {
    $cart = $_SESSION['cart'];
    $id = $_POST['id'];
    if (isset($cart[$id])) {
        $cart[$id]++;
    } else {
        $cart[$id] = 1;
    }
    $_SESSION['cart'] = $cart;
}

if ($action == 'del') {
    $id = $_POST['id'];
    $cart = $_SESSION['cart'];
    if (isset($cart[$id])) {
        unset($cart[$id]);
    }
    $_SESSION['cart'] = $cart;
}

if ($action == 'plus') {
    $id = $_POST['id'];
    $cart = $_SESSION['cart'];
    if (isset($cart[$id])) {
        $cart[$id]++;
    }
    $_SESSION['cart'] = $cart;
}

if ($action == 'minus') {
    $id = $_POST['id'];
    $cart = $_SESSION['cart'];
    if (isset($cart[$id])) {
        $cart[$id]--;
    } 
    if ($cart[$id] === 0) {
        unset($cart[$id]);
    }
    $_SESSION['cart'] = $cart;
}

Ответы (3 шт):

Автор решения: VikiMayson

Присвоить товарам категорию, и через select отправить запрос по типу.

SELECT COUNT(*) as count FROM product WHERE category = 'носки'

Вариант 2

$result = SELECT * FROM product WHERE category = 'носки'
count($result);
→ Ссылка
Автор решения: Денис

Попробуйте так:

$generalAmount = 0;
foreach($_SESSION['cart'] as $id => $count){
     $generalAmount += $count;
}
echo "Общее кол-во товаров: ".$generalAmount;
→ Ссылка
Автор решения: Ikramiddin uulu Nurbek

Почему бы тебе сразу же не записать количество в сессию? Например $cart['totalAmount'] += 'количество'

→ Ссылка