результат заказа с датой из базы данных, не показывать, как это должно быть

Хорошо, у меня есть поиск в Интернете по всему этому, и я не смог найти его, поэтому я задаю свою проблему здесь.

Сначала я покажу вам свой код:

if ($result = $mysqli->query("SELECT * FROM jarig
WHERE maand = 'April'
ORDER BY datum"))
{
if ($result->num_rows > 0)
{
while ($row = $result->fetch_object()){
$date = new DateTime($row->datum);
echo "'" . $date->format('d') . "  " . $row->naam;
echo "<br />";
}
}
}

Моя проблема:

Как вы видите, у меня есть строка, которая содержит названия месяцев года, поэтому мне не нужно составлять больше таблиц и их легко отображать, потому что я могу заказать их по месяцам. Также у меня есть ряд с датами рождения.

Даты рождения (названные в таблице как DATUM) имеют тип «ДАТА» на моем столе (я надеюсь, что я говорю это правильно).

пример ДАТЫ в этом ряду следующие:

----------
DATUM
----------
1991-04-07
1978-04-12
2001-04-24

Они заполнены случайным образом, то есть со всеми датами, которые я сохранил в своей базе данных с днями рождения.

Результат, который мне нравилось видеть на моем сайте, немного отличается от того, что я хотел получить. Результаты отображаются только как дни, потому что они отправляются непосредственно в табличную ячейку, где они принадлежат в формате HTML:

Calendar Month: April
'12 Jan
'07 kees
'24 Frans

Мой вопрос:

Это происходит на всех датах, которые у меня есть, но мне нравится видеть, что они отображаются от первой даты месяца до последней даты месяца в правильном порядке, а не случайно. Как я показал вам выше. Хотелось бы видеть их в таком порядке, от самого низкого до самого высокого числа (07,12,24).

Как я могу исправить эту проблему?

0

Решение

Возможно, попробуйте изменить ваш запрос:

SELECT jarig.*, DATE_FORMAT(jarig.datum, '%d') AS day FROM jarig
WHERE maand = 'April'
ORDER BY day

Что вам действительно нужно, так это просто день даты, а не дата сама по себе. Таким образом, вы можете заказать по дням, а не по дате.

Тогда в вашем php, просто используйте столбец дня:

echo "'" . $row->day . "&nbsp;&nbsp;" . $row->naam;
echo "<br />";
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]