• 11-10-2012, 12:30:08
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Selamlar

    <? 	$bugun= time();
    	$t = explode('-', $sonuc['Bitis_Tarihi']); 
    	$son = mktime(0,0,0,$t[1],$t[2],$t[0]); 
    	$fark=$son-$bugun;
    	$gun=$fark/(24*60*60);
    	$gun=floor($gun);
    	echo $gun;?>
    şeklinde bugünle veritabanından gelen tarih arasındaki farkı alabiliyorum.

    Bu işi sorguyla çözebilir miyiz bilmiyorum ama çözebiliriz diye tahmin ediyorum. Bana sadece bugün ile arasında 0-30 gün aralığındakileri çekecek sorgu lazım.

    Eğer bunu sorguyla halledemezsek sanırım bir if sıkıştırmak gerekecek ama eğer oluyorsa sorguyla daha basit bitirmek istedim işi.
  • 11-10-2012, 13:25:52
    #2
    Merhaba,
    30 gün önceki verileri mi listeletmek istiyorsunuz ?
    Yoksa bugün ve 30 gün öncesi mi ?
  • 11-10-2012, 13:38:45
    #3
    bugün den geriye 30

    yani bugün baktığımda son tarihine 30 gün kalmışlar

    misal bugün 11 Ekim 2012 ise 10 Kasım olanı güstersin ama 25 kasımı göstermesin gibi
  • 11-10-2012, 13:43:43
    #4
    $tarih = strtotime("-31 days");
    select * from tabloadı where sütun = "$tarih";
    ...
    Sanırım anlatmak istediğinizin çözümü bu.
    Tam olarak anlayamadımda
  • 11-10-2012, 14:20:54
    #5
    Üyeliği durduruldu
    DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
    işini görür galiba.
  • 11-10-2012, 15:02:53
    #6
    $query = mysql_query("SELECT * FROM Sozlesme WHERE DATE_SUB(CURDATE(), INTERVAL 1 MONTH) ORDER BY Bitis_Tarihi ASC");
    şeklinde girdim ama sonuç alamadım.

    sözleşmelerimi tuttuğum bir veritabanım var. bunu basit bir scriptle birleştirip çalıştırdığımda bitiş tarihi yaklaşan sözleşmelerimi görmek istiyorum. Son bir ayı kalmış sözleşmeleri bana gösterse yeterli
  • 11-10-2012, 15:13:04
    #7
    oguzhan306 adlı üyeden alıntı: mesajı görüntüle
    $query = mysql_query("SELECT * FROM Sozlesme WHERE DATE_SUB(CURDATE(), INTERVAL 1 MONTH) ORDER BY Bitis_Tarihi ASC");
    şeklinde girdim ama sonuç alamadım.

    sözleşmelerimi tuttuğum bir veritabanım var. bunu basit bir scriptle birleştirip çalıştırdığımda bitiş tarihi yaklaşan sözleşmelerimi görmek istiyorum. Son bir ayı kalmış sözleşmeleri bana gösterse yeterli
    $tarih = strtotime("-1 month");
    $query = mysql_query("SELECT * FROM Sozlesme WHERE Bitis_Tarihi > '$tarih' ORDER BY Bitis_Tarihi DESC");
    DESC = Büyükten küçüğe,
    ASC = Küçükten büyüğe.
    Bitis_Tarihi ne olarak geçiyor orasıda önemli. Veritabanındaki bir örnek bitiş tarihi verir misiniz.
  • 11-10-2012, 15:18:51
    #8
    tarih arasındaki sonuçlar için bunu kullanmalısın.

    between "2000-01-01" and "20012-11-10"
  • 11-10-2012, 15:22:48
    #9
    2013-01-21 2012-12-20 gibi tarihler var.

    sorgudan vazgeçtim ve aşağıdaki gibi bir çözüm buldum.

    <?
    $bugun= time();
    	$t = explode('-', $sonuc['Bitis_Tarihi']); 
    	$son = mktime(0,0,0,$t[1],$t[2],$t[0]); 
    	$fark=$son-$bugun;
    	$gun=$fark/(24*60*60);
    	$gun=floor($gun);
    ?>
    
    <?php if (trim($gun)>"0") { ?>
    Bu sayede en azından günü geçenleri görmüyorum.

    Şimdi soru değişti bu if (trim) mevzusunu nasıl düzenlemeliyim ki sadece 0-30 aralığını göstersin?