Подтвердить что ты не робот

PHP и MySQL: порядок по последней дате и лимиту 10

Я создаю систему заметок на своем сайте, и я дошел до того места, где пользователи могут отправлять заметки в базу данных MySQL с помощью PHP, а затем PHP выдает их на странице. Однако, когда они печатают/эхо-сигналы, сначала появляется самый старый, но я хочу сначала самого последнего. Я также хочу, чтобы их ограничили до 10, поэтому на странице появляются только 10. Вот мой PHP-код, ваша помощь будет высоко оценена:

// initialize some variables
$notedisplaylist = "";
$myObject = "";
$result = mysql_query("SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY         date_time");

while($row = mysql_fetch_array($result)){
  $note_title = $row["note_title"];
  $note_body = $row["note_body"];
  $date = $row["date_time"];
  $notedisplaylist .= '<h2>' . $note_title . '</h2><br /><p>' . $note_body . '</p><hr /><p>Noted: ' . $date . '</p><hr /><br />';
}
4b9b3361

Ответ 1

Это должно сделать это:

$result = mysql_query("SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY date_time DESC LIMIT 0, 10");

Ответ 2

использование:

SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY date_time DESC LIMIT 10

DESC: порядок по убыванию (от самого нового до самого старого) LIMIT 10: найдены первые 10 записей.

Ответ 3

Try

$result = mysql_query("SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY date_time DESC LIMIT 10");

Для более подробного объяснения ORDER и LIMIT посетите статьи doc MySQL о сортировке строк и базовом выберите синтаксис (найдите пулю, описывающую LIMIT).

Ответ 4

дают как

 ORDER BY date_time DESC

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

Ответ 5

Сделайте это

$result = mysql_query("SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY date_time DESC LIMIT 0, 10");

Ответ 6

Если вы хотите, чтобы ваш LIMIT был переменной, здесь я назвал его $limit:

"SELECT * FROM tbl ORDER BY input_date DESC LIMIT 0, $limit";