• 11-06-2024, 16:44:25
    #1
    Merhaba arkadaşlar. Php ile bir emlak sitesi yapıyorum. Fiyatı düşenler bölümü yapmak istiyorum. Nasıl yapmam lazım? Mantığını kuramadım? Örnek bir kod varsa paylaşabilirsiniz.
  • 11-06-2024, 16:48:21
    #2
    İf else yöntemi ile yapabilirsiniz.

    Mesela veritabanında bu kısım dusenler olsa

    if ($vericek['dusenler'] != null ) {
    Buraya fiyatı düşenlerin kodları
    } else {
    Burası normal ilanlar
    }
  • 11-06-2024, 17:14:16
    #3
    Fiyatı düşenlerden kasıt indirim yapılanlar mı? İlanda Normal fiyat ve İndirimli fiyat şeklinde 2 tane input olur bu şekilde Fiyatı Düşenler bölümüne İndirimli Fiyatı dolu olan içerikler çekilir.
    Marketplace tarzı değişen fiyatları devamlı takip etmek amaç ise; Fiyatlar adında ayrı tablo açılır fiyat değiştiğinde bu tabloya ilan id, fiyat, tarih eklenir ilanı gösterirken son tarihteki fiyatı alır. Fiyatı düşenler bölümünde ise şuanki fiyatı bir önceki fiyatından küçük olanlar çekilir.
  • 11-06-2024, 21:20:54
    #4
    Yapay zekaya sorduğumda bana alttaki kodu verdi. Zannediyorum marketplace tarzı bu. Tablo yapısını aynı şekilde yaptım ve aşağıdaki kod ile hiç bir veri listelenmiyor. Bu arada eski_fiyat yazan yer doğru mu acaba. Bu isimde bir tablo veya tabloda bir alan yok çünkü.
    <?php
    $sql = "SELECT e.yenieklenenler_id, e.yenieklenenler_fiyat, fg.yenieklenenler_eskiveriler_fiyat_al AS eski_fiyat
    FROM yenieklenenler e JOIN yenieklenenler_eskiveriler fg ON e.yenieklenenler_id = fg.yenieklenenler_eskiveriler_id
    WHERE fg.yenieklenenler_eskiveriler_tarih_al = (SELECT MAX(yenieklenenler_eskiveriler_tarih_al) FROM yenieklenenler_eskiveriler WHERE yenieklenenler_eskiveriler_id = e.yenieklenenler_id)
    AND e.yenieklenenler_fiyat < fg.yenieklenenler_eskiveriler_fiyat_al";
    
    $sqlquery = mysqli_query($db, $sql);
    $fiyati_dusenler = [];
    $result = mysqli_num_rows($sqlquery);
    if ($result > 0) {
       while ($yenieklenensorgu_goster = mysqli_fetch_assoc($sqlquery)) {
          $fiyati_dusenler[] = $yenieklenensorgu_goster;
          ?>
    
    <!--  Listelenmesi gereken örnek kodlar -->
          <div class="yenieklenenadi">
             <?php echo ucwords($yenieklenensorgu_goster['yenieklenenler_ad']); ?>
          </div>
          <div class="yenieklenenkonum">
             <i class="fa-solid fa-location-dot"></i>
             <?php echo ucwords($yenieklenensorgu_goster['yenieklenenler_il']); ?>
          </div>
          <div class="yenieklenenfiyat">
             ₺ <?php echo $yenieklenensorgu_goster['yenieklenenler_fiyat']; ?>
          </div>
          <?php
       }
    }
    ?>
  • 11-06-2024, 23:24:30
    #5
    Sorunum güncel arkadaşlar.
  • 12-06-2024, 01:34:42
    #6
    Sahibinden.com'u baz alalım. Fiyat için abone oluyoruz ve indirim oldukça bildirim geliyor, veya fiyatı düşenler listesinde yer alıyor.

    Burada her bir ilan için girilen son güncel fiyatı tutan bir tablomuz olmalı. Örnek satır;

    tablo: fiyatlar
    fiyat_id ilan_id piyasa_fiyat onceki_fiyat satis_fiyat
    1 11231 128. 00 119.90 99.90
    1 11231 128.00 99.90 79.90

    Artık elimizde ilan_id si 11231 olan kaydın tüm fiyat güncellemeleri mevcut. Fiyat düşenler diye ayrı sayfa mı açarsın. Yoksa sahibinden.com gibi fiyat düştüğünde bildirim mi gönderirsin gerisi sende kalıyor
  • 12-06-2024, 17:36:37
    #7
    Şöyle hallettim. İkinci bir tablo açmadım. Mevcut tabloya eski fiyat diye bir alan açtım. O alana gelecek veriyi mevcut fiyat verisi olarak belirledim. Value'yu o şekil verdim. Güncelleme yaptığımda mevcut fiyat, eski fiyat alanına kayıt oluyor ve yeni fiyatı güncellenmiş olarak veri tabanına kaydediyorum. Cevaplar için teşekkür ederim.
  • 13-06-2024, 10:30:34
    #8
    3. ve 4. Kez Fiyat değiştiğinde takip edemezsiniz. Bence ilanlar ile Fiyat kısmını ayırarak daha verimli iş çıkarırsınız bu gibi işlerde.