0-й индекс невозможно удалить из корзины в LaravelPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 0-й индекс невозможно удалить из корзины в Laravel

Сообщение Anonymous »

Я использую массив add json для добавления товаров в корзину. затем значения успешно добавлены в корзину. но при удалении элементов последний элемент (0-й элемент индекса) не может быть удален из корзины

Код: Выделить всё

public function addToCart(Request $request)
{
$productId = $request->input('product_id');
$product = Product::findOrFail($productId);

$cart = session()->get('cart', []);

$existingProductKey = null;
foreach ($cart as $key => $item) {
if ($item['id'] == $product->id) {
$existingProductKey = $key;
break;
}
}

if ($existingProductKey !== null) {
// Increase quantity if product already in cart
$cart[$existingProductKey]['qty'] += 1;
} else {

$cart[] = [
'id' => $product->id,
'name' => $product->name,
'price' => $product->price,
'image' => $product->image, // Assuming image field exists
'qty' => 1,
];
}

session()->put('cart', $cart);

return redirect()->route('cart');
}

public function showCart()
{
// Get cart from session
$cart = session()->get('cart', []);
return view('cart', compact('cart'));
}

public function removeFromCart(Request $request)
{
$productId = $request->input('product_id');

// Get cart from session
$cart = session()->get('cart', []);

foreach ($cart as $key => $item) {
if ($item['id'] == $productId) {
unset($cart[$key]);
break;
}
}

$cart = array_values($cart);

// Save updated cart back to session
session()->put('cart', $cart);

return redirect()->route('cart');
}
это логика контроллера. Товары можно добавлять в корзину, но при удалении из корзины невозможно удалить 0-й элемент индекса из корзины.

Подробнее здесь: https://stackoverflow.com/questions/793 ... in-laravel
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»