Laravel 10 ile Alışveriş Sitesi Ders 20 - Sepet işlemleri 3
Laravel 10 ile geliştirilen bir alışveriş sitesinin sepet işlemlerini ele alacağız. Bu dersin üçüncü bölümünde, sepetten ürün kaldırma işlemi gerçekleştirilecektir.
Remove Metodunun Oluşturulması
Öncelikle, CartController
içindeki remove
metodunu aşağıdaki gibi oluşturalım.
Route::post('/sepet/remove', [CartController::class,'remove'])->name('sepet.remove');
public function remove(Request $request)
{
$productID = $request->product_id;
$cartItem = session('cart', []);
if (array_key_exists($productID, $cartItem)) {
unset($cartItem[$productID]);
}
session(['cart' => $cartItem]);
return back()->withSuccess('Başarıyla Sepetten Kaldırıldı!');
}
Bu metodda, istek üzerinden gelen ürün ID'sini alıyoruz. Ardından, sepet bilgisini session üzerinden alıyoruz. Eğer sepet içinde verilen ürün ID'sine sahip bir öğe varsa, unset fonksiyonuyla bu öğeyi sepetten kaldırıyoruz. Son olarak, güncellenmiş sepet bilgisini session üzerine yazıyoruz.
Sepet Sayfasının Düzenlenmesi
Şimdi, frontend/pages/cart.blade.php
dosyasını aşağıdaki gibi düzenleyelim:
<form action="{{route('sepet.remove')}}" method="POST">
@csrf
<input type="text" hidden name="product_id" value="{{$key}}">
<button type="submit" class="btn btn-primary btn-sm">X</button>
</form>
Bu kodda, index sayfasında bulunan sepet tablosu içinde her bir ürün için "Sil" düğmesi ekleme işlemini gerçekleştirdik. Düğmeye tıklandığında, sepet.remove
rotasına bir POST isteği gönderilir ve seçilen ürünün sepetten kaldırılması sağlanır.
Sonuç
Laravel 10 ile alışveriş sitesi dersinin sepet işlemleri bölümünün üçüncü kısmını ele aldık. remove
metodu oluşturularak sepetten ürün kaldırma işlemi gerçekleştirildi. Ayrıca, index sayfasında sepet tablosunda "Sil" düğmesi eklendi.
Yorumlar (0)