сравнивая время и дату и отображая ее статус в php и mysql - PullRequest
0 голосов
/ 01 декабря 2011

Итак, у меня есть этот фрагмент кода, чтобы заполнить результаты моего списка ставок в таблице:

$query = "SELECT item, start_time, start_date, description, price FROM items"; 

$result = mysql_query($query) or die(mysql_error());

 while($row = mysql_fetch_array($result)){  
         echo"<tr><td>$row[item]    </td>";
         echo" <td>  $row[price]</td>";
         echo" <td>  $row[description]</td>";   
         echo"<td> $row[start_time]</td>";  
         echo"<td> $row[start_date]</td>";  
                                                      }

Однако я хотел бы добавить еще один столбец «СОСТОЯНИЕ», который будет отображать статус ставок, активных или неактивных, на основе сравнения пользовательских значений «start_time» и «start_date» с сегодняшними датой и временем. Как мне это сделать? Текущий тип данных для 'start_time' и 'start_date' в MySQL - это время и дата. Спасибо.

1 Ответ

0 голосов
/ 01 декабря 2011

Предполагая, что ваш столбец БД настроен как метка времени, вы можете сделать это двумя способами.Я определенно согласен с комментарием, что вы должны использовать метку времени в вашей базе данных.Это меньше данных, чем сохранение вашей метки времени UNIX в виде целого числа, и нетрудно получить вашу дату из sql.

1) В вашем sql SELECT вы можете добавить что-то вроде:

DATE_FORMAT( `scheduled_release`, \'%m-%d-%Y\') AS formattedDate

Select `name`, DATE_FORMAT( `scheduled_release`, \'%m-%d-%Y\') AS formattedDate WHERE id = ?

2) date("m/j/y", strtotime( $row[date ) );

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...