деректер ауқымын орнату 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";
}

setting a <tr> background red.

the html is something like this:

<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>

now, what i'm trying to do is:

how can i set other color to the next 3 days ? as u can see in the example, i put the green color.

dont know if i was clear, any question, please, be my guest

0
иә, менің нәтиже while() ішіндегі болса, html мысал, 28 - bgcolor - қызыл, келесі 5 күнге жасыл түстің мәнін орнату керек, мысалы
қосылды автор Ricardo Binns, көзі
Көптеген сұрақтар туындайды: басқа күндерді қалай алуға болады? Оларды цикл ішінде жасайсыз ба? Неліктен 31 - бірінші күні, ал кейінгі ұрпақ - ұрпақтың ордені ме?
қосылды автор Nicolás, көзі

1 жауаптар

Бұл аулақ болу керек

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";
}

немесе келесідей нәрсені жасай аласыз: (i assume you loop through your days) (this solution will not work as days are printed in the opposite order)

$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";
}
1
қосылды
иә, цикл бар.
қосылды автор Ricardo Binns, көзі
Сіздің бірінші нұсқаңыз жақсы жұмыс істейді, кейбір сынақтарды жасайды және нәтиже арқылы осында қайтарылады.
қосылды автор Ricardo Binns, көзі
Мен күнді әртүрлі айдан бастап, жұмыстардың жұмысын көру үшін тексеріп жатырмын :)
қосылды автор Ricardo Binns, көзі
жұмыс жақсы. Рахмет!
қосылды автор Ricardo Binns, көзі
Негізінен, біз «қызыл» күнді кездестіріп, $ green айнымалы мәнін 3-ге орнатып отырамыз. Әр кезде біз $ жасыл 0-ден артық екенін тексереміз және бұл жағдайда біз жасыл фон жасыл және жасыл $ 1 азайтыңыз. қызыл түстен кейін келесі 3 күн ішінде жасылға жасыл фон орнатамыз
қосылды автор Ivan, көзі
Сізге күндерді қарама-қарсы тәртіпте басып шығарғаныңызды байқадыңыз, сондықтан екінші шешім жұмыс істемейді
қосылды автор Ivan, көзі