• 16-06-2010, 00:45:08
    #1
    Eposta Aktivasyonu Gerekmekte
    Merhaba, hepinize kolay gelsin. Siteme son 24 saatte şu kadar kişi kayıt oldu kodunu ekleyeceğim fakat kodu o kadar aramama rağmen bir türlü google'da örneğini bulamadım. tek bulduğum phpbb için son 24 saat eklentisi ama onunda kodları bayağı karışık. bir arkadaşıma danıştım ve benim uyeler tablomda saat kavramı olması gerekiyormuş. tablomda saat yok. bunu saatsiz, yani sunucu saatine göre 24 saatte bir verinin sıfırlanacağı bir şekilde php kodu var mıydı? bir örneği olsada ben uğraşır yaparım.
    şimdiden ilgi ve alakanıza teşekkür eder saygılarımı sunarım
  • 16-06-2010, 01:50:38
    #2
    Üyeliği durduruldu
    Merhabalar
    Çalışmalarınızda kolay gelsin.
    saate dayalı bir işlem yapmak istiyorsanız bu yapılabilinir. bir kaç yolla yapabilirsiniz. fakat 24 saati sürekli kontrol etmek zorunda olacağınız için ya bir cronjob ( zamanlanmış iş ) ayarlamanız ya da sitenizde son 24 saat içerisindeki üyelerin gösterileceği bölüme bir kontrol kodu yazmanız gerekecek bunun nedeni ise az sonra anlatacağım mysql de oluşturacağımız tablodaki verileri sıfırlamak için

    isterseniz üyeler tablonuza bir stun ekleyerek yapabilirsiniz şayet böylel yaparsanız cronjob ayarlamanıza gerek kalmaz ben üyeler tablosuna bir saat stunu eklediğinizi varsayarak sistemi anlatmaya çalışıyorum

    /*Diyelim ki üyeler tablonuza var(255) gibi basit bir stun oluşturdunuz ve üye olunurken buraya insert into yaptığınız query de 
    üye olma saati olarak*/
    $uye_olma_saati = time();
    //uye olma saatini üye tablosuna yazdık şimdi de göstermek istediğimiz yerdeki sorguyu yazalım.
    $24_saat_once = time() - 7 * 24 * 60 * 60;
    query("select * from uye_tablo_ismi order by uye_olma_saati > $24_saat_once");
    //gibi sadece mantığı anlatmak istedim umarım anlamışsındır veya 
    //bir başka sistem de kullanabilirsin üyeler tablona
    //date time fild bir stun aç ve sorgunda da şunu kullan 
    query("select * from uye_tablon where kayit_tarihi_date_time < DATE_ADD(NOW(), INTERVAL 1 DAY)");
    
    veya aynı yöntemde şu şekilde sorgu oluştur
    query("select * from uye_tablon WHERE kayit_tarihi_date_time > DATE_SUB(NOW(), INTERVAL 1 DAY)");
    Umarım iki mantığı da anlatabilmişimdir Saygılarımla.
  • 16-06-2010, 10:46:14
    #3
    Eposta Aktivasyonu Gerekmekte
    Merhaba, ilgi ve alakanıza çok teşekkür ederim. Kısmetse akşam uzun uzun inceleyeceğim.
    Tekrardan teşekkür ederim.
  • 19-06-2010, 00:32:08
    #4
    @izmirden; değişken isimleri rakamla başlayamaz. ($24_saat_once)
  • 19-06-2010, 03:07:10
    #5
    Üyeliği durduruldu
    @Hkan ilgin ve düzeltmen için teşekkür ederim daha net bir şekilde anlatabilmek için rakamları kullandım verdiğim kod tamamen mantığını anlaması içindi Saygılarımla