设置数据范围php



我有一个列表,在一个表中列出了一些天,所以,我的数据库结果是这样的:

$day   = $res->fields['DAY'];
$month = $res->fields['MONTH'];
$year  = $res->fields['YEAR'];

,我把它们放在一起形成一个有效的日期

// put together the date
$date    = $res->fields['DAY']."/".$res->fields['MONTH']."/".$res->fields['YEAR'];     
// get the present day
$today   = date('d/m/Y');  // 28/10/2011

和我检查:

if($date == $today){
   $backGroundTr = "red";
}

设置<tr>的背景为红色。

的HTML是这样的:

<tr bgcolor="green">
   <td>31/10/2011</td>
</tr>
<tr bgcolor="green">
   <td>30/10/2011</td>
</tr>
<tr bgcolor="green">
   <td>29/10/2011</td>
</tr>
<tr bgcolor="red"> // this reciave the red bgcolor because is today
   <td>28/10/2011</td>
</tr>

现在,我要做的是:

如何设置其他颜色为未来3天?正如你在这个例子中看到的,我用的是绿色。

不知道我讲的是否清楚,有什么问题请自便

应该可以了

if($date == date('d/m/Y',strtotime('+1 day')) ||
    $date == date('d/m/Y',strtotime('+2 day')) ||
    $date == date('d/m/Y',strtotime('+3 day'))){
   $backGroundTr = "green";
}

或者你可以这样做:(我假设你循环你的日期)(这个解决方案将不起作用,因为日期以相反的顺序打印)

$green=0;
while ( ... ){
  ...
  if($date == $today){
    $backGroundTr = "red";
    $green=3;
  }
  if ($green>0)
  {
    $backGroundTr = "green";
    $green--;
  }
  ...
}

或者你可以这样做:

if(strtotime($date) > strtotime($today) && 
  strtotime($date) <= strtotime('+3 days',$today)
{
  $backGroundTr = "green";
}

最新更新