• 30-01-2014, 10:55:04
    #1
    merhaba arkadaşlar.. zamanında sitemde satış sistemi kodladım bundan sonra bayagı bir satış yaptım.. suan sistemde yaklasık 450 500 tane üyem bulunmakta. bu üyelerin her biri 30 günlük oldugu için sistemde bitiş tarihi örnek 30.02.2014 şeklinde yazılıyor. fakat ben en basta bir akılsızlık yapıp bu tarihi strtotime olarak kaydettirmedim. yani sisteme 30.02.2014 şeklinde giriyor. şimdide admin panelinde sadece tarihi gecenleri cektirmek istiyorum. suanki tarihi strtotime olarak cekiyorum ama mysql de her bir veriyi strtotime olarak nasıl cekicem yardımcı olabilirmisiniz

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 10:55:04 -->-> Daha önceki mesaj 10:45:40 --

    while ($tablo = mysql_fetch_array($sql)){
    if(isset($_GET['gecmis'])){
    if(strtotime($tablo['tarih']) < time()){

    bu şekilde çözdüm
  • 30-01-2014, 11:00:51
    #2
    veritabanında tarih verisini tuttğunuz alan date türünde ise SQL içinde < = > gibi koşulları kullanabilirsiniz.
  • 30-01-2014, 11:32:18
    #3
    @Bekir,

    Bence mevcut sütünu tarih formatına göre düzenle.

    Bunu örnek olarak;

    SSELECT 
    CONCAT(  SUBSTRING(tarih,7,4), '-' ,SUBSTRING(tarih,4,2), '-', SUBSTRING(tarih,1,2) )
    FROM uyeler
    WHERE 1
    şeklinde yapabilirsin ilgili içeriği düzenleyerek.

    Listelemeyi de aynı mantıkla geçici olarak

    SELECT * FROM uyeler
    WHERE CONCAT(  SUBSTRING(tarih,7,4), SUBSTRING(tarih,4,2), SUBSTRING(tarih,1,2) ) < '20140130';
    olarak yapılabilir.
  • 30-01-2014, 11:33:18
    #4
    yeni bir sütun oluştur. tarih sütunundaki verileri strotime olarak oraya kaydettir. en temel mantık