سلام
ابتدا باید وجود یا عدم وجود session را بررسی کنید. در صورت موجود نبون آنرا ایجاد کنید.
if (!session()->get('cart'))
session()->put('cart', []);
$cart = session()->get('cart');
حال باید بررسی کنید که آیا محصول جدید در سبد خرید وجود دارد یا خیر؟
if(!isset($cart[$id])) {
$cart[$id] = [
"id" => $id,
"title" => $product->title,
"price" =>$product->price,
"quantity" => 1
];
session()->put('cart', $cart);
}
فکر کنم مشکل کد شما این باشه که session بنام sessionBasket را ایجاد نکردید!!! من از همین کدهای فوق در سبد خرید پروژه خودم استفاده کردم و نتیجه گرفتم.
برای حذف یک محصول از سبد خرید هم می توانید از کد زیر استفاده نمایید.
if(isset($cart[$id]))
{
$cart = session()->get('cart');
unset($cart[$id]);
// update session
session()->put('cart', $cart);
if (!sizeof($cart)) {
session()->put('cart', []);
session()->forget('cart');
}
}
امیدوارم که این پاسخ مشکل شما را حل کرده باشد.
موفق باشید.