16

私は自分のサイトにメモ システムを構築しています。ユーザーが PHP を使用して MySQL データベースにメモを投稿し、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 />';
}
4

6 に答える 6

30

これはそれを行う必要があります:

$result = mysql_query("SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY date_time DESC LIMIT 0, 10");
于 2011-08-27T14:06:33.910 に答える
10

使用する:

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

DESC : 降順 (新しいものから古いものへ) LIMIT 10: 最初に見つかった 10 件のレコード。

于 2011-08-27T14:06:50.633 に答える
7

試す

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

ORDERおよびの詳細な説明については、行の並べ替えと基本的な選択構文LIMITに関する MySQL ドキュメントの記事を参照してください ( を説明する箇条書きを探してください)。LIMIT

于 2011-08-27T14:06:00.673 に答える
6

のように与える

 ORDER BY date_time DESC

それ以外の場合は、それらを昇順で並べ替えています..古いものが最初に来るのはそのためです

于 2011-08-27T14:06:10.563 に答える
5

これを行う

$result = mysql_query("SELECT * FROM notes WHERE note_author_id='$u_id' ORDER BY date_time DESC LIMIT 0, 10");
于 2011-08-27T16:21:14.477 に答える