Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

2 Günden Eski Verileri Listelemek/Silmek ?

Konu, 'PHP' kısmında SAki tarafından paylaşıldı.

  1. SAki

    SAki Üye

    Kayıt:
    19 Haziran 2008
    Mesajlar:
    117
    Beğenilen Mesajlar:
    0
    Meslek:
    Öğrenci
    Şehir:
    istanbul
    Merhaba Arkadaşlar,

    DB'de tarih kısmı 2010-07-29 17:45:48 şeklinde kayıtlı veriler var ve ben eklendikden 2 gün sonra verileri silmek istiyorum.

    bi döngü şeklinde yapıcakdım ancak bir türlü 2 gün öncesinin tarihini alıp db den ona göre eski verileri çekemedim. bulduğum konulardaki mysql select 'ler olmadı.

    bunu direk döngüsüz yapabileceğim bir yol varmı sizce veya 2 günden eski verileri nasıl listeliebilirim.

    Şimdiden Teşekkürler.
     
  2. zbahadir

    zbahadir where id='Linux'

    Kayıt:
    7 Temmuz 2006
    Mesajlar:
    4,442
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar ve Internet Hizmetleri
    Şehir:
    Trabzon
    İki gün önceki tarihi şu şekilde elde edebilirsiniz;

    PHP:
    $ikigunoncesi  mktime (0,0,0,date("m"), date("d")-2date("Y"));
    Edit:
    Daha detaylı istersiniz düye düşündüm;
    PHP:
    date_default_timezone_set("Europe/Istanbul");
    $ikigunoncesi  mktime (0,0,0,date("m"), date("d")-2date("Y"));
    echo 
    date("d/m/Y",$ikigunoncesi);
     
  3. Actionsee

    Actionsee Üye

    Kayıt:
    25 Nisan 2010
    Mesajlar:
    148
    Beğenilen Mesajlar:
    0
    Meslek:
    Eğitim Teknoloğu
    Şehir:
    Ankara
    Bende buna benzer birşey arıyordum. Mesela db ile yapacak olsak. DB de kayıtta tutmak gereken bir numara var. Bu numara her 2 günde 1 sayı artacak desem nasıl yapabilirim? DB den alacak son güncellenme tarihini ve sayı 1 arttıgında o an ki zamanı db ye kayda girecek. Yardımcı olursanız cok sevinirim.
     
  4. zbahadir

    zbahadir where id='Linux'

    Kayıt:
    7 Temmuz 2006
    Mesajlar:
    4,442
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar ve Internet Hizmetleri
    Şehir:
    Trabzon
    Tam olarak anlayamadım ama her iki günde bir veri girmek istiyorsun o anki zamanı veya her neyse;
    Bu işlem db'de gerçekleşmez ya scriptin kullanıldığı zamanlarda tetiklenecek veya cron yapacaksınız. Devamlı kullanılan bir script varsa zamanın saniye biriminden faydalanarak yapılabilir.

    Ben php profesyonel değilim. Daha basit yollardan yapılabilir belki ama ben şu şekilde yapardım.
    Örneğin zamanı şu an time() olarak kaydettim.
    Her script çalıştığında alanı kontrol eder üzerinden iki gün geçti mi kontrol ederim ve geçtiyse alanı yenilerim.

    Eski zaman = eski veri
    Kontrol edilen zaman = eski zaman + 172800(iki gün)


    if ((eskiveri+172800)>simdikizaman)
    {
    Yeni değeri yaz.
    }


    gibi, siz daha iyi yorumlayabilirsiniz.
     
  5. Actionsee

    Actionsee Üye

    Kayıt:
    25 Nisan 2010
    Mesajlar:
    148
    Beğenilen Mesajlar:
    0
    Meslek:
    Eğitim Teknoloğu
    Şehir:
    Ankara
    Bu bilgi bana yeterli teşekkür ederim. Yukarıda tetiklenecek veya cron yapacaksınız dediniz. cron nedir biraz acıklar mısınız?
     
  6. zbahadir

    zbahadir where id='Linux'

    Kayıt:
    7 Temmuz 2006
    Mesajlar:
    4,442
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar ve Internet Hizmetleri
    Şehir:
    Trabzon
    Web kontrol panellerinde belirlenen zaman aralıklarında scriptleri çalıştırmaya yarayan ayarlar yapılabiliyor(cronjob).
    javaScript setTimeout gibi.
    Onun için ayrıca classlar var kullanmak isterseniz;
    http://www.phpclasses.org/package/4140-PHP-Database-driven-PHP-job-scheduler-like-cron.html

    Ben daha çok sunucu tabanlı kullanıyorum. Sunucu sahipleri için daha kullanışlı olabiliyor.
     
  7. Actionsee

    Actionsee Üye

    Kayıt:
    25 Nisan 2010
    Mesajlar:
    148
    Beğenilen Mesajlar:
    0
    Meslek:
    Eğitim Teknoloğu
    Şehir:
    Ankara
    Teşekkür ederim inceleyeceğim :)