• 20-03-2024, 15:40:30
    #1
    Merhaba arkadaşlar.
     <td>
              <a>
              '.$cikti["siparis_tarihi"].'
              </a>
              </td>
    Tablomda siparis_tarihi 'ne tarih geldiğinde [ Örnek : 2024-03-20 13:52:37 ] Bu tarihi baz alıp ekrana bu tarih dakika saniye üzerinden sonucu yazdırdığım yerde süre başlatsın kaç saniye dakika geçtiğini yazdırsın istiyorum. Varmıdır yardımcı olacak ?
  • 20-03-2024, 15:44:14
    #2
    Hocam öncelikle aradaki farkı bulabilmek için tarihi veritabanına STRTOTIME formatında kaydedin bence. Eğer öyle değilse de gelen veriyi önce STRTOTIME olarak dönüştürüp sonra aradaki farkı bulun bugünün tarihinden çıkararak

    EDİT :

    $ciktitarih = $cikti["siparis_tarihi"] ;
    $ciktiStr = strtotime($ciktitarih);
    $Bugun= date('d.m.Y');    
     $BugunSTR = strtotime($Today);
    $kalanGun = ($ciktiStr  - $TodaySTR) / (60*60*24);
    //Bu işlem gün farkını bulur, eğer otomatik olarak saymasını istiyorsanız JS ile veriyi güncellemeniz gerekir bilginiz olsun
  • 20-03-2024, 15:46:42
    #3
    <?php
    
    // Sipariş tarihi örneği, gerçek kullanımda bu veri veritabanından veya başka bir kaynaktan gelir
    $siparis_tarihi = "2024-03-20 13:52:37"; // Bu değer dinamik olmalıdır
    
    // Sipariş tarihini DateTime objesine dönüştür
    $siparis_tarihi_objesi = new DateTime($siparis_tarihi);
    
    // Şimdiki zamanı temsil eden DateTime objesi
    $simdiki_zaman = new DateTime();
    
    // İki DateTime objesi arasındaki farkı bul
    $fark = $simdiki_zaman->diff($siparis_tarihi_objesi);
    
    // Geçen toplam dakika ve saniyeyi hesapla
    $gecen_dakika = ($fark->days * 24 * 60) + ($fark->h * 60) + $fark->i;
    $gecen_saniye = $fark->s;
    
    echo "Sipariş üzerinden geçen süre: " . $gecen_dakika . " dakika " . $gecen_saniye . " saniye.";
    
    ?>
  • 20-03-2024, 15:47:30
    #4
    Öncelikle, PHP ile sipariş tarihini alıp JavaScript'e aktar. PHP tarafında, sipariş tarihini Unix zaman damgasına (timestamp) çevireceğiz:

    <?php
    // Sipariş tarihinizi alıyoruz. Örnek: '2024-03-20 13:52:37'
    $siparis_tarihi = $cikti["siparis_tarihi"];
    
    // PHP tarafında tarihi Unix zaman damgasına çeviriyoruz.
    $siparis_timestamp = strtotime($siparis_tarihi);
    
    // JavaScript'e aktarmak için zaman damgasını yazdırıyoruz.
    echo "<td><a id='siparisTarihi' data-timestamp='{$siparis_timestamp}'>{$siparis_tarihi}</a></td>";
    ?>
    Sonra, JavaScript ile gerçek zamanlı olarak ne kadar zaman geçtiğini hesaplayacağız:

    <script>
    // Belirli aralıklarla zamanı güncellemek için fonksiyon
    function zamanGuncelle() {
        var siparisTarihiElementi = document.getElementById('siparisTarihi');
        var siparisTimestamp = siparisTarihiElementi.getAttribute('data-timestamp');
        var simdikiZaman = Math.floor(Date.now() / 1000); // Şu anki zaman (saniye cinsinden)
        
        var gecenZaman = simdikiZaman - siparisTimestamp; // Geçen zamanı hesapla
    
        // Gecen zamanı formatlayarak ekrana yazdır
        var gecenDakikalar = Math.floor(gecenZaman / 60);
        var gecenSaniyeler = gecenZaman % 60;
        siparisTarihiElementi.textContent = gecenDakikalar + " dakika " + gecenSaniyeler + " saniye önce";
    }
    
    // Her saniye zamanı güncelle
    setInterval(zamanGuncelle, 1000);
    </script>
    Kendine göre uyarlayabilirsin.
  • 20-03-2024, 15:49:24
    #5
    Yapay zekanın gözünü seveyim Eskiden böyle bir soru sorulduğunda saatlerce cevap gelmezdi. Stack Overflow bilmem ne forumlarda ararken canımız çıkardı
  • 20-03-2024, 15:51:47
    #6
    egekibar adlı üyeden alıntı: mesajı görüntüle
    <?php
    
    // Sipariş tarihi örneği, gerçek kullanımda bu veri veritabanından veya başka bir kaynaktan gelir
    $siparis_tarihi = "2024-03-20 13:52:37"; // Bu değer dinamik olmalıdır
    
    // Sipariş tarihini DateTime objesine dönüştür
    $siparis_tarihi_objesi = new DateTime($siparis_tarihi);
    
    // Şimdiki zamanı temsil eden DateTime objesi
    $simdiki_zaman = new DateTime();
    
    // İki DateTime objesi arasındaki farkı bul
    $fark = $simdiki_zaman->diff($siparis_tarihi_objesi);
    
    // Geçen toplam dakika ve saniyeyi hesapla
    $gecen_dakika = ($fark->days * 24 * 60) + ($fark->h * 60) + $fark->i;
    $gecen_saniye = $fark->s;
    
    echo "Sipariş üzerinden geçen süre: " . $gecen_dakika . " dakika " . $gecen_saniye . " saniye.";
    
    ?>
    nftw adlı üyeden alıntı: mesajı görüntüle
    Öncelikle, PHP ile sipariş tarihini alıp JavaScript'e aktar. PHP tarafında, sipariş tarihini Unix zaman damgasına (timestamp) çevireceğiz:

    <?php
    // Sipariş tarihinizi alıyoruz. Örnek: '2024-03-20 13:52:37'
    $siparis_tarihi = $cikti["siparis_tarihi"];
    
    // PHP tarafında tarihi Unix zaman damgasına çeviriyoruz.
    $siparis_timestamp = strtotime($siparis_tarihi);
    
    // JavaScript'e aktarmak için zaman damgasını yazdırıyoruz.
    echo "<td><a id='siparisTarihi' data-timestamp='{$siparis_timestamp}'>{$siparis_tarihi}</a></td>";
    ?>
    Sonra, JavaScript ile gerçek zamanlı olarak ne kadar zaman geçtiğini hesaplayacağız:

    <script>
    // Belirli aralıklarla zamanı güncellemek için fonksiyon
    function zamanGuncelle() {
        var siparisTarihiElementi = document.getElementById('siparisTarihi');
        var siparisTimestamp = siparisTarihiElementi.getAttribute('data-timestamp');
        var simdikiZaman = Math.floor(Date.now() / 1000); // Şu anki zaman (saniye cinsinden)
        
        var gecenZaman = simdikiZaman - siparisTimestamp; // Geçen zamanı hesapla
    
        // Gecen zamanı formatlayarak ekrana yazdır
        var gecenDakikalar = Math.floor(gecenZaman / 60);
        var gecenSaniyeler = gecenZaman % 60;
        siparisTarihiElementi.textContent = gecenDakikalar + " dakika " + gecenSaniyeler + " saniye önce";
    }
    
    // Her saniye zamanı güncelle
    setInterval(zamanGuncelle, 1000);
    </script>
    Kendine göre uyarlayabilirsin.
    Sağolun hocam