2015-05-13 3 views
1

Я пытаюсь оценить и изменить цвет каждой строки в зависимости от возраста записи. По какой-то причине это утверждение неправильно оценивает и просто красит все строки серым цветом. Я следующие значения хранятся в столбце VARCHAR 2015-01-12 2015-05-12 2015-05-12strtotime 1 месяц или более поздняя версия

Таким образом, в теории, первый один должен быть белым фоном, а два других должны быть серый фон , Где я иду не так? Благодаря!

while ($row = mysql_fetch_array($result)) 
{ 
    $mydate = $row['Received_date']; 
    if($mydate < strtotime('1 month ago')) 
    { 
     echo "<tr bgcolor=\"#808080\">"; 
    } 
    else 
    { 
     echo "<tr>"; 
    } 

    echo " 
    <td style='font-size:12px;'><center>{$row['ID']}</center></td> 

ответ

1

Вы сравниваете значение даты с временным значением unix, и это не работает. Хотя ты на полпути! Вы уже звоните strtotime(); просто сделайте это дважды, и вы, надеюсь, будете в порядке.

$mydate = strtotime($row['Received_date']); 
+0

Я попытался '$ MyDate = StrToTime ($ строки [ 'Received_Date']); \t если ($ MyDate "; \t} ' , но не повезло: -/ – new2programming

+0

Я предлагаю вам отбросить обе strtotimed переменные и посмотреть, есть ли там что-то не так. –

+0

Я повторяю это, и он читается просто отлично, даже попытался изменить формат столбца на DATE, но эхо просто показывает «2015-01-12» (внутри кавычек) в качестве значения. Разве это не означало бы, что он мог бы правильно сравнить его снова, поскольку он эффективно читает if (2015-01-12 new2programming

Смежные вопросы