Я всегда путаюсь при работе с датами в PHP и MySQL. Я просмотрел другие сообщения, но не смог найти решение,PHP-запрос MySQL, возвращающий несколько строк с одной датой
У меня есть простой блог, хранящийся в базе данных, который записывает echos при запросе. Я получаю несколько строк с несколькими записями, но дата одинакова для всех из них.
Даты хранятся с временной меткой MySQL в столбце «TimeStamp» и отформатированы таким образом в базе данных: 2011-12-29 21:16:55 (например).
Вот запрос:
$set_select_sql = "SELECT *
FROM `table`
ORDER BY `table`.`TimeStamp` DESC
LIMIT 0 , 30";
$set_query = mysql_query($set_select_sql);
$HowMany=mysql_num_rows($set_query);
$time = date("g:i a", strtotime(mysql_result($set_query,0,'TimeStamp')));
$date = date("F j, Y ", strtotime(mysql_result($set_query,0,'TimeStamp')));
$blogpost = mysql_result($set_query,0,'blogpost');
mysql_data_seek($set_query, 0);
$r = 0;
while ($r <= $HowMany) {
$row = mysql_fetch_assoc($set_query);
if ($row == FALSE) {
} else {
extract($row);
echo "It was $time on $date when I posted this.<br/>";
echo "$blogpost"
}
$r++
Почему я только получаю одну дату? Что мне не хватает?
Спасибо!
Вы устанавливаете время и дату переменных значений первой строки. Затем вы просматриваете свои записи, но вы не обновляете переменные времени и даты в своем цикле. – Jrod
Вы можете заменить 'if ($ row == FALSE) {}' на 'if ($ row! == FALSE)', поэтому вам не нужно ставить свою логику в 'else' – jprofitt