• 05-11-2023, 15:53:18
    #1
    $startdate = $orders['orders_time'];
    $month = $orders['orders_lastdate'];
    if ($month >= time()) {
      $remaining['text']['year'] = " Yıl ";
      $remaining['text']['month'] = " Ay ";
      $remaining['text']['day'] = " Gün";
      $remaining['remaining'] = $month - time();
      $remaining['day'] = floor($remaining['remaining'] / 86400);
      $remaining['echo'] = $remaining['day'].$remaining['text']['day'];
      if($remaining['day'] >= 30) {
        $remaining['month'] = floor($remaining['day'] / 30);
        $remaining['day'] %= 30;
        if($remaining['month'] > 12) {
          $remaining['year'] = floor($remaining['month'] / 12);
          $remaining['month'] %= 12;
          if($remaining['month'] == 0) {
            $remaining['month'] = "";
            $remaining['text']['month'] = "";
          }
          $remaining['echo'] = $remaining['year'].$remaining['text']['year'].$remaining['month'].$remaining['text']['month'].$remaining['day'].$remaining['text']['day'];
        }else {
          $remaining['echo'] = $remaining['month'].$remaining['text']['month'].$remaining['day'].$remaining['text']['day'];
        }
      }
    }
    $orders['orders_time'] değerim ürünü satın aldığım tarih
    orders_lastdate değerim ise ürünün son tarihi

    bu verilere göre progresbar da nasıl gösterebilirim
  • 05-11-2023, 16:03:15
    #2
    <!DOCTYPE html><html lang="en"><head><style type="text/css">body{font-family:Arial,sans-serif;text-align:center}.progress-container{width:80%;margin:0 auto;border:1px solid #ccc;background-color:#f0f0f0;height:30px;border-radius:5px;position:relative;overflow:hidden}.progress-bar{height:100%;background-color:#3498db;text-align:center;line-height:30px;color:#fff;position:absolute;transition:width .5s}</style><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>İlerleme Çubuğu</title></head><body> <?php
        
        ?> <div class="progress-container"><div class="progress-bar" style="width: <?php echo calculateProgress($remaining); ?>%"></div></div> <?php
        function calculateProgress($remaining) {
        if ($remaining['month'] >= 12) {
            return 100; // Eğer süre 12 aydan fazla ise, çubuğu tamamen dolu göster
        } else {
            $totalMonths = 12;
            $remainingMonths = $remaining['month'];
            $percentage = ($remainingMonths / $totalMonths) * 100;
            return $percentage;
        }
    }
    
        ?> </body></html>
  • 05-11-2023, 16:11:02
    #3
    chemochan adlı üyeden alıntı: mesajı görüntüle
    <!DOCTYPE html><html lang="en"><head><style type="text/css">body{font-family:Arial,sans-serif;text-align:center}.progress-container{width:80%;margin:0 auto;border:1px solid #ccc;background-color:#f0f0f0;height:30px;border-radius:5px;position:relative;overflow:hidden}.progress-bar{height:100%;background-color:#3498db;text-align:center;line-height:30px;color:#fff;position:absolute;transition:width .5s}</style><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>İlerleme Çubuğu</title></head><body> <?php
        
        ?> <div class="progress-container"><div class="progress-bar" style="width: <?php echo calculateProgress($remaining); ?>%"></div></div> <?php
        function calculateProgress($remaining) {
        if ($remaining['month'] >= 12) {
            return 100; // Eğer süre 12 aydan fazla ise, çubuğu tamamen dolu göster
        } else {
            $totalMonths = 12;
            $remainingMonths = $remaining['month'];
            $percentage = ($remainingMonths / $totalMonths) * 100;
            return $percentage;
        }
    }
    
        ?> </body></html>
    Cevabınız için teşekkür ederim ama tam olarak yapmak istediğim ürünün kalan süresini progresbarda göstermek
  • 05-11-2023, 16:15:12
    #4
    order time ile last date arasındaki zamanı progressbarda görmek istiyorsanız neden diğer kodları yazdınız onlara gerek yok ki
  • 05-11-2023, 16:16:01
    #5
    chemochan adlı üyeden alıntı: mesajı görüntüle
    order time ile last date arasındaki zamanı progressbarda görmek istiyorsanız neden diğer kodları yazdınız onlara gerek yok ki
    kod bloğunu kompile atıym dedim çünki hangi verilere ihtiyaç olunabileceğini bilmiyordum yardım ederseniz sevinirim
  • 05-11-2023, 16:17:08
    #6
    Web Tasarım ve Yazılım
    Verilerinizi kullanarak bir progres bar oluşturmak için JavaScript ve HTML ile birlikte çalışan bir çözüm kullanmanız gerekecektir. İşte bu verilere dayalı bir örnek:
    <!DOCTYPE html>
    <html>
    <head>
        <style>
            .progress-bar {
                width: 100%;
                height: 30px;
                background-color: #ccc;
            }
    
            .progress-fill {
                height: 100%;
                width: 0;
                background-color: #4caf50;
                text-align: center;
                line-height: 30px;
                color: white;
            }
        </style>
    </head>
    <body>
        <?php
        $startdate = $orders['orders_time'];
        $month = $orders['orders_lastdate'];
        if ($month >= time()) {
            $remaining['text']['year'] = " Yıl ";
            $remaining['text']['month'] = " Ay ";
            $remaining['text']['day'] = " Gün";
            $remaining['remaining'] = $month - time();
            $remaining['day'] = floor($remaining['remaining'] / 86400);
            if ($remaining['day'] >= 30) {
                $remaining['month'] = floor($remaining['day'] / 30);
                $remaining['day'] %= 30;
                if ($remaining['month'] > 12) {
                    $remaining['year'] = floor($remaining['month'] / 12);
                    $remaining['month'] %= 12;
                    if ($remaining['month'] == 0) {
                        $remaining['month'] = "";
                        $remaining['text']['month'] = "";
                    }
                }
            }
            $totalDays = ($remaining['year'] * 365) + ($remaining['month'] * 30) + $remaining['day'];
            $elapsedDays = floor((time() - $startdate) / 86400);
            $progress = min(($elapsedDays / $totalDays) * 100, 100); // Ensure progress doesn't exceed 100%
        }
        ?>
    
        <div class="progress-bar">
            <div class="progress-fill" style="width: <?php echo $progress; ?>%"><?php echo $progress; ?>%</div>
        </div>
    </body>
    </html>
    Bu kod, verilerinizi kullanarak bir ilerleme çubuğu oluşturur. İlk olarak, toplam geçen gün sayısını ve bu geçen günlerin yüzdesini hesaplar ve ardından ilerleme çubuğunu bu yüzdeye göre günceller. Bu örnek, HTML ve PHP kullanarak bir ilerleme çubuğu oluşturmak için temel bir yol sunar. İlerleme çubuğunun tasarımını ve stilini gerektiğine göre özelleştirebilirsiniz.
  • 05-11-2023, 16:19:09
    #7
    <!DOCTYPE html>
    <html>
    <head>
        <style type="text/css">
            .progress-bar {
        width: 100%;
        height: 30px;
        background-color: #ccc;
    }
    
    .progress {
        height: 100%;
        width: 0;
        background-color: #4CAF50;
        transition: width 1s;
    }
    
    #time-remaining {
        text-align: center;
        font-weight: bold;
    }
    
        </style>
    </head>
    <body>
        <div class="progress-bar">
            <div class="progress"></div>
        </div>
        <p id="time-remaining">Kalan süre: 0 saat 0 dakika 0 saniye</p>
    </body>
    <script>// Sipariş tarihi ve son tarih arasındaki süreyi hesapla
    const orderTime = new Date("<?php echo $orders_time; ?>"); // Sipariş zamanını ayarlayın
    const lastDate = new Date("<?php echo $orders_lastdate; ?>"); // Son tarihi ayarlayın
    
    function calculateProgress() {
        const currentTime = new Date();
        const elapsedTime = currentTime - orderTime;
        const totalTime = lastDate - orderTime;
        const progressPercentage = (elapsedTime / totalTime) * 100;
    
        if (progressPercentage >= 100) {
            document.querySelector(".progress").style.width = "100%";
            document.querySelector("#time-remaining").textContent = "Sipariş süresi doldu.";
        } else {
            document.querySelector(".progress").style.width = progressPercentage + "%";
    
            const remainingTime = new Date(totalTime - elapsedTime);
            const hours = remainingTime.getUTCHours();
            const minutes = remainingTime.getUTCMinutes();
            const seconds = remainingTime.getUTCSeconds();
    
            document.querySelector("#time-remaining").textContent = `Kalan süre: ${hours} saat ${minutes} dakika ${seconds} saniye`;
        }
    }
    
    calculateProgress();
    setInterval(calculateProgress, 1000);
    </script>
    </html>

    böyle dene
  • 05-11-2023, 16:29:56
    #8
    bostanci96 adlı üyeden alıntı: mesajı görüntüle
    Verilerinizi kullanarak bir progres bar oluşturmak için JavaScript ve HTML ile birlikte çalışan bir çözüm kullanmanız gerekecektir. İşte bu verilere dayalı bir örnek:
    <!DOCTYPE html>
    <html>
    <head>
        <style>
            .progress-bar {
                width: 100%;
                height: 30px;
                background-color: #ccc;
            }
    
            .progress-fill {
                height: 100%;
                width: 0;
                background-color: #4caf50;
                text-align: center;
                line-height: 30px;
                color: white;
            }
        </style>
    </head>
    <body>
        <?php
        $startdate = $orders['orders_time'];
        $month = $orders['orders_lastdate'];
        if ($month >= time()) {
            $remaining['text']['year'] = " Yıl ";
            $remaining['text']['month'] = " Ay ";
            $remaining['text']['day'] = " Gün";
            $remaining['remaining'] = $month - time();
            $remaining['day'] = floor($remaining['remaining'] / 86400);
            if ($remaining['day'] >= 30) {
                $remaining['month'] = floor($remaining['day'] / 30);
                $remaining['day'] %= 30;
                if ($remaining['month'] > 12) {
                    $remaining['year'] = floor($remaining['month'] / 12);
                    $remaining['month'] %= 12;
                    if ($remaining['month'] == 0) {
                        $remaining['month'] = "";
                        $remaining['text']['month'] = "";
                    }
                }
            }
            $totalDays = ($remaining['year'] * 365) + ($remaining['month'] * 30) + $remaining['day'];
            $elapsedDays = floor((time() - $startdate) / 86400);
            $progress = min(($elapsedDays / $totalDays) * 100, 100); // Ensure progress doesn't exceed 100%
        }
        ?>
    
        <div class="progress-bar">
            <div class="progress-fill" style="width: <?php echo $progress; ?>%"><?php echo $progress; ?>%</div>
        </div>
    </body>
    </html>
    Bu kod, verilerinizi kullanarak bir ilerleme çubuğu oluşturur. İlk olarak, toplam geçen gün sayısını ve bu geçen günlerin yüzdesini hesaplar ve ardından ilerleme çubuğunu bu yüzdeye göre günceller. Bu örnek, HTML ve PHP kullanarak bir ilerleme çubuğu oluşturmak için temel bir yol sunar. İlerleme çubuğunun tasarımını ve stilini gerektiğine göre özelleştirebilirsiniz.

    <?php
    $startdate = $orders['orders_time'];
    $month = $orders['orders_lastdate'];
    if ($month >= time()) {
      $remaining['text']['year'] = " Yıl ";
      $remaining['text']['month'] = " Ay ";
      $remaining['text']['day'] = " Gün";
      $remaining['remaining'] = $month - time();
      $remaining['day'] = floor($remaining['remaining'] / 86400);
      $remaining['echo'] = $remaining['day'].$remaining['text']['day'];
    
      $totalDays = $remaining['day'];
    
      if ($remaining['day'] >= 30) {
        $remaining['month'] = floor($remaining['day'] / 30);
        $remaining['day'] %= 30;
        $totalDays = ($remaining['month'] * 30) + $remaining['day'];
    
        if ($remaining['month'] > 12) {
          $remaining['year'] = floor($remaining['month'] / 12);
          $remaining['month'] %= 12;
          $totalDays = ($remaining['year'] * 365) + ($remaining['month'] * 30) + $remaining['day'];
          if ($remaining['month'] == 0) {
            $remaining['month'] = "";
            $remaining['text']['month'] = "";
          }
          $remaining['echo'] = $remaining['year'].$remaining['text']['year'].$remaining['month'].$remaining['text']['month'].$remaining['day'].$remaining['text']['day'];
        }else {
          $remaining['echo'] = $remaining['month'].$remaining['text']['month'].$remaining['day'].$remaining['text']['day'];
        }
      }
      $elapsedDays = floor((time() - $startdate) / 86400);
    $progress = min(($elapsedDays / $totalDays) * 100, 100); // Ensure progress doesn't exceed 100%
    }
    echo $progress;
    
    ?>
    Kodlarımı Böyle güncelleyince progress değerini 0 verdi ama şuanda 7 gün olması lazım $remaining['echo'] değerini yazdırınca 7 Gün çıkıyor

    Test ettiğim verinin orders_time değeri : 1699138067 / orders_lastdate değeri = 1699838067
  • 05-11-2023, 16:31:57
    #9
    Web Tasarım ve Yazılım
    Webiay adlı üyeden alıntı: mesajı görüntüle
    <?php
    $startdate = $orders['orders_time'];
    $month = $orders['orders_lastdate'];
    if ($month >= time()) {
      $remaining['text']['year'] = " Yıl ";
      $remaining['text']['month'] = " Ay ";
      $remaining['text']['day'] = " Gün";
      $remaining['remaining'] = $month - time();
      $remaining['day'] = floor($remaining['remaining'] / 86400);
      $remaining['echo'] = $remaining['day'].$remaining['text']['day'];
    
      $totalDays = $remaining['day'];
    
      if ($remaining['day'] >= 30) {
        $remaining['month'] = floor($remaining['day'] / 30);
        $remaining['day'] %= 30;
        $totalDays = ($remaining['month'] * 30) + $remaining['day'];
    
        if ($remaining['month'] > 12) {
          $remaining['year'] = floor($remaining['month'] / 12);
          $remaining['month'] %= 12;
          $totalDays = ($remaining['year'] * 365) + ($remaining['month'] * 30) + $remaining['day'];
          if ($remaining['month'] == 0) {
            $remaining['month'] = "";
            $remaining['text']['month'] = "";
          }
          $remaining['echo'] = $remaining['year'].$remaining['text']['year'].$remaining['month'].$remaining['text']['month'].$remaining['day'].$remaining['text']['day'];
        }else {
          $remaining['echo'] = $remaining['month'].$remaining['text']['month'].$remaining['day'].$remaining['text']['day'];
        }
      }
      $elapsedDays = floor((time() - $startdate) / 86400);
    $progress = min(($elapsedDays / $totalDays) * 100, 100); // Ensure progress doesn't exceed 100%
    }
    echo $progress;
    
    ?>
    Kodlarımı Böyle güncelleyince progress değerini 0 verdi ama şuanda 7 gün olması lazım $remaining['echo'] değerini yazdırınca 7 Gün çıkıyor

    Test ettiğim verinin orders_time değeri : 1699138067 / orders_lastdate değeri = 1699838067
    Kodunuzu güncellediğinizde hedef tarih ile mevcut tarih arasındaki farkı doğru bir şekilde hesaplamışsınız gibi görünüyor. Ancak, progress çubuğunu hesapladığınızda bir hata olmuş gibi görünüyor. Sorununuzu gidermek için kodunuzu aşağıdaki gibi düzeltebilirsiniz:

    <?php
    $startdate = $orders['orders_time'];
    $month = $orders['orders_lastdate'];
    if ($month >= time()) {
        $remaining['text']['year'] = " Yıl ";
        $remaining['text']['month'] = " Ay ";
        $remaining['text']['day'] = " Gün";
        $remaining['remaining'] = $month - time();
        $remaining['day'] = floor($remaining['remaining'] / 86400);
    
        $totalDays = $remaining['day'];
    
        if ($remaining['day'] >= 30) {
            $remaining['month'] = floor($remaining['day'] / 30);
            $remaining['day'] %= 30;
            $totalDays = ($remaining['month'] * 30) + $remaining['day'];
    
            if ($remaining['month'] > 12) {
                $remaining['year'] = floor($remaining['month'] / 12);
                $remaining['month'] %= 12;
                $totalDays = ($remaining['year'] * 365) + ($remaining['month'] * 30) + $remaining['day'];
                if ($remaining['month'] == 0) {
                    $remaining['month'] = "";
                    $remaining['text']['month'] = "";
                }
            }
        }
    
        $elapsedDays = floor((time() - $startdate) / 86400);
        $progress = min(($elapsedDays / $totalDays) * 100, 100); // Ensure progress doesn't exceed 100%
        echo $progress;
    }
    ?>
    Bu kod, progress çubuğunu doğru bir şekilde hesaplar ve sonucu $progress değişkeni ile döndürür. Önceki kodunuzun altındaki bu kodu kullanarak, progress değerini doğru bir şekilde hesaplayabilirsiniz. Eğer $remaining['echo'] değerini kullanmak isterseniz, yukarıdaki hesaplamaları ona göre ayarlayabilirsiniz.