• 26-02-2015, 03:45:00
    #1
    Arkadaşlar kullanıcı hesabının bitiş tarihi veritabanından okunup 02.01.2015 12:00:00 şeklinde $bitis değişkenine veriliyor. Eğer şuan tarih 01.01.2015 10:00:00 ise;

    Öyle bir kod yazmalıyım ki sonucu " Hesabınızın bitmesine 1 Gün 2 Saat kaldı" olmalı.

    0 gün ve 0 saatten sonra da, "Hesabınızın süresi doldu, eklemek için <a href....."

    Yardımlarınızı bekliyorum
  • 26-02-2015, 08:30:50
    #2
    srknyxl adlı üyeden alıntı: mesajı görüntüle
    Arkadaşlar kullanıcı hesabının bitiş tarihi veritabanından okunup 02.01.2015 12:00:00 şeklinde $bitis değişkenine veriliyor. Eğer şuan tarih 01.01.2015 10:00:00 ise;

    Öyle bir kod yazmalıyım ki sonucu " Hesabınızın bitmesine 1 Gün 2 Saat kaldı" olmalı.

    0 gün ve 0 saatten sonra da, "Hesabınızın süresi doldu, eklemek için <a href....."

    Yardımlarınızı bekliyorum
    İşinize yarayacak fonksiyonlar şu sayfada mevcut. Bir inceleyin isterseniz.
  • 26-02-2015, 09:46:03
    #3
    PHP 5.3 ve üzeri için date_diff() fonksiyonunu kullanabilirsiniz.

    $tarih=date_create("2013-03-15 23:15:42");
    $simdi=date_create(date("Y-m-d H:i:s"));
    $fark=date_diff($tarih,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    • srknyxl
    srknyxl bunu beğendi.
    1 kişi bunu beğendi.
  • 27-02-2015, 01:31:28
    #4
    Misafir adlı üyeden alıntı: mesajı görüntüle
    PHP 5.3 ve üzeri için date_diff() fonksiyonunu kullanabilirsiniz.

    $tarih=date_create("2013-03-15 23:15:42");
    $simdi=date_create(date("Y-m-d H:i:s"));
    $fark=date_diff($tarih,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    Kodu siteye eklemeye çalışıyorum fakat başaramadım.

    Veritabanında tarih saat Y-m-d H:i:s şeklinde değilde Y.m.d H:i:s diye tutuluyor. Aşağıdaki gibi çalıştıramadım;

    // $kullanicitar (kullanıcının hesabından okunmuş veritabanı değeri)
    $simdi=date_create(date("Y.m.d H:i:s"));
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
  • 27-02-2015, 08:43:46
    #5
    srknyxl adlı üyeden alıntı: mesajı görüntüle
    Kodu siteye eklemeye çalışıyorum fakat başaramadım.

    Veritabanında tarih saat Y-m-d H:i:s şeklinde değilde Y.m.d H:i:s diye tutuluyor. Aşağıdaki gibi çalıştıramadım;

    // $kullanicitar (kullanıcının hesabından okunmuş veritabanı değeri)
    $simdi=date_create(date("Y.m.d H:i:s"));
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");

    date_crate string olmayan bir ifade döndürür ve date_diff yalnızca bu ifade ile çalışır, date fonksiyonu tarafından döndürülen bir ifade ile değil. Aşağıdaki gibi denerseniz olacaktır.

    $simdi=date_create(date("Y.m.d H:i:s"));
    $kullanicitar=date_create($kullanicitar); // bu şekilde olmalı
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    • srknyxl
    srknyxl bunu beğendi.
    1 kişi bunu beğendi.
  • 27-02-2015, 19:52:46
    #6
    Misafir adlı üyeden alıntı: mesajı görüntüle
    date_crate string olmayan bir ifade döndürür ve date_diff yalnızca bu ifade ile çalışır, date fonksiyonu tarafından döndürülen bir ifade ile değil. Aşağıdaki gibi denerseniz olacaktır.

    $simdi=date_create(date("Y.m.d H:i:s"));
    $kullanicitar=date_create($kullanicitar); // bu şekilde olmalı
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    Olmadı. Sanırım ayıraç olarak (-) istiyor. Bende (nokta)
  • 28-02-2015, 08:43:22
    #7
    srknyxl adlı üyeden alıntı: mesajı görüntüle
    Olmadı. Sanırım ayıraç olarak (-) istiyor. Bende (nokta)
    02.01.2015 12:00:00 formatında ise şöyle olmalı, date("d.m.Y H:i:s")

    $simdi=date_create(date("d.m.Y H:i:s"));
    $kullanicitar=date_create($kullanicitar);
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    • srknyxl
    srknyxl bunu beğendi.
    1 kişi bunu beğendi.
  • 01-03-2015, 22:50:22
    #8
    Misafir adlı üyeden alıntı: mesajı görüntüle
    02.01.2015 12:00:00 formatında ise şöyle olmalı, date("d.m.Y H:i:s")

    $simdi=date_create(date("d.m.Y H:i:s"));
    $kullanicitar=date_create($kullanicitar);
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    Hocam veri tabanında tarihler string olarak tutuluyor. Tarih olarak çağıramıyorum.

    Birde önemli bir sorunum daha var. Süresi dolan üyeler (2 gün önce dolduysa) 2 gün kaldı yazıyor. İkiside tarih olsa > yada < ile ife bağlarım ama ondan önce veri tabanındaki 2015.03.01 22:49:00 biçimindeki yazıyı date olarak okumam lazım.
  • 02-03-2015, 09:25:50
    #9
    srknyxl adlı üyeden alıntı: mesajı görüntüle
    Hocam veri tabanında tarihler string olarak tutuluyor. Tarih olarak çağıramıyorum.

    Birde önemli bir sorunum daha var. Süresi dolan üyeler (2 gün önce dolduysa) 2 gün kaldı yazıyor. İkiside tarih olsa > yada < ile ife bağlarım ama ondan önce veri tabanındaki 2015.03.01 22:49:00 biçimindeki yazıyı date olarak okumam lazım.
    $kullanicitar=str_replace('.','-',$kullanicitar);
    Veriyi çektikten sonra üstteki kodu ekleyebilirsiniz.

    $kullanicitar=str_replace('.','-',$kullanicitar);
    $simdi=date_create(date("Y-m-d H:i:s"));
    $kullanicitar=date_create($kullanicitar);
    $fark=date_diff($kullanicitar,$simdi);
    echo $fark->format("%y Yıl %m Ay %d Gün %h Saat %i Dakika ve %s Saniye");
    https://ideone.com/GOJL7z
    • srknyxl
    srknyxl bunu beğendi.
    1 kişi bunu beğendi.