【问题标题】:php show red colour div if date is within 7 days, else show other colour div?如果日期在 7 天内,php 显示红色 div,否则显示其他颜色 div?
【发布时间】:2025-12-02 14:55:02
【问题描述】:

我有一个脚本可以告诉用户数据库中的某些内容何时到期,例如,如果某些内容在 4 月 20 日到期,而今天是 15 日,那么它将告诉用户还有 5 天的时间过期了。

现在我想在我的脚本中添加说如果距离到期日期还有 7 天或更短时间,则显示红色 div,否则如果少于 30 天但超过 7 天,则显示黄色 div,否则,如果还有超过 30 天的时间,则显示一个绿色的 div。

谁能告诉我我能做什么,谢谢

<?php 
    include 'config.php';
    $data = mysql_query("SELECT TIMESTAMPDIFF(DAY, insurance_date, NOW()) AS expire_date
                            FROM supplier_stats") or die(mysql_error());
?>

<?php 
    include 'config.php';
    $result = mysql_query("SELECT TIMESTAMPDIFF(DAY, insurance_date, NOW()) AS expire_date 
                             FROM supplier_stats") or die(mysql_error()); 
    while($row = mysql_fetch_array($result)) 
    {
        $days = $row['expire_date'] -1;
        if ($days > 0)
        {
            echo "<p>Insurance expires in <font color=\"red\">{$row['expire_date']} day(s)!</font></p>"; 
        }
        else
        {
            $when = $days*-1;           
            echo "<p>Insurance expires";
            if ($when > 1){
                echo " in {$when} days</p>";
            }
            elseif ($when ===1)
            {
                echo " tomorrow</p>";
            }
            elseif ($when > 0)
            {
                echo " today</p>";
            }
        }
    } 
?>

【问题讨论】:

标签: php mysql


【解决方案1】:

类似:

<?
  if ($when <= 7) $color = "red";
  else if ($when <= 30) $color = "yellow";
  else $color = "green";
  echo "<div style='background-color: {$color};'>Expires in {$when} day(s)</div>";
?>

显然,您需要调整它以适合您的代码。

【讨论】:

    最近更新 更多