CodeBlanks Logo Icon CodeBlanks

Proje sonu - Alışveriş sepeti

PHP kursu · Başlangıç · Ders 52/116

Tüm parçaları birleştirip sepeti çalışan bir uygulama haline getirirsin.

Proje sonu - Alışveriş sepeti

Sepet uygulaması neredeyse tamam: ürünleri ekledin, listeledin ve toplamı hesapladın. Son adım, gerçek dünyadaki sepetler gibi indirim uygulamak.

Çoğu mağazada belirli bir tutarın üstünde alışverişe indirim yapılır. Sen de if ($total > 100) koşuluyla %10 indirim uygulayacaksın: $discount = $total * 0.1. Sonra müşterinin ödeyeceği tutarı $total - $discount olarak gösterirsin.

İndirim ile ödenecek tutarı hesaplama

İndirim mantığı basit bir if/else ile yazılır. Koşul sağlanırsa $discount değişkenine toplamın %10'u atanır; sağlanmazsa 0 atanır. Böylece indirim olmasa bile $total - $discount hesabı doğru çalışır.

Son çıktı satırında müşteri net tutarı görür: echo "Ödenecek: " . ($total - $discount) . " TL";. Parantez önemli: çıkarmanın nokta (birleştirme) operatöründen önce yapılması gerekir.

Uygulama İndirim uygula ve ödenecek tutarı yazdır

Son adımda indirim uygulayalım. $total 100 TL'den büyükse $discount değişkenine toplamın %10'unu (yani $total * 0.1) ata; değilse 0 ata. Sonra Ödenecek: <ödenecek> TL yazdır; ödenecek tutar $total - $discount olur (örn. Ödenecek: 108 TL).

Örnek çözümü göster
" . ($total - $discount) . " TL"; yaz.
Örnek çözüm:
<?php
// Sepet dizisini başlat ve ilk ürünü ekle
$cart = [];
$cart[] = ["name" => "Kalem", "price" => 25, "quantity" => 2];
// array_push ile iki ürün daha ekle
array_push($cart, ["name" => "Defter", "price" => 40, "quantity" => 1], ["name" => "Silgi", "price" => 10, "quantity" => 3]);
echo "Sepet: " . count($cart) . " ürün\n";
// Sepeti foreach ile listele
foreach ($cart as $product) {
    echo $product["name"] . " - " . $product["price"] . " TL x" . $product["quantity"] . "\n";
}
// Toplamı hesapla
$total = 0;
foreach ($cart as $product) {
    $total += $product["price"] * $product["quantity"];
}
echo "Toplam: " . $total . " TL\n";
// İndirim uygula
if ($total > 100) {
    $discount = $total * 0.1;
} else {
    $discount = 0;
}
echo "Ödenecek: " . ($total - $discount) . " TL";

Proje tamamlandı

Alışveriş sepeti uygulaması tamamlandı. Beş dersin sonunda şunları yaptın:

  • boş bir dizi oluşturdun ve ürün ekledin
  • array_push ile birden fazla ürün ekledin
  • foreach ile sepeti listeledin
  • akümülatörle toplam tutarı hesapladın
  • indirim uygulayıp ödenecek tutarı gösterdin

Bu teknikler gerçek projelerde de aynı çalışır: ürün kataloğu, sipariş özeti, stok takibi. Sıradaki gruplarda dizileri daha derinlemesine öğreneceksin.

Kendini test et

  1. Sepet uygulamasının son adımı ne olmalı?

    • Sepeti ekranda renklerle süslemek
    • Büyük alışverişlerde indirim uygulamak
    • Ürün adlarını büyük harfle yazmak
    • Sepeti tarayıcıda açmak
    Cevabı göster

    Büyük alışverişlerde indirim uygulamak — Doğru. İndirim, gerçek bir sepetin son adımıdır: toplam belirli bir eşiği geçince müşteriye indirim yapılır.

  2. İndirim kavramlarını eşleştir

    if ($total > 100)
    indirim eşiği
    $discount = $total * 0.1
    %10 indirim
    $total - $discount
    ödenecek tutar
    else
    indirimsiz durum
  3. İndirim koşulunu tamamla

    if (____) {
        $discount = $total * 0.1;
    } else {
        $discount = 0;
    }
    Cevabı göster
    if ($total > 100) {
        $discount = $total * 0.1;
    } else {
        $discount = 0;
    }

Başlangıç bölümündeki tüm dersler