我在MySQL數據庫中有一個新聞表我查詢表並在一個PHP頁面中顯示新聞標題,但現在表格變得越來越大,所以我想將結果分成頁面我的意思是顯示每個50個新聞標題在一個頁面(pagenation)。 我用這個查詢帶來的消息:如何將MySQL查詢結果限制爲特定結果?
SELECT news.*, categories.category, users.username
FROM news INNER JOIN
users on news.user_id = users.id INNER JOIN
categories on categories.id = news.category_id
order by news.timestamp DESC
limit $min,$max
,這是PHP頁面的一部分(我如何計算最大值和最小值)
$news_per_page = 50;
if(!empty($_GET['p_n']))
{
$p_n = $_GET['p_n'];
$max = $news_per_page*$p_n;
$min = ($max - $news_per_page);
}
else
{
$p_n = 1;
$max = 50;
$min = 0;
}
$news = all_news($max,$min);
的sql給我,當我通過錯誤的結果限制我不知道爲什麼。以這種方式指定sql查詢的最大值和最小值是錯誤的嗎?我應該糾正這些代碼中的某些內容嗎
LIMIT子句在MySQL手冊解釋說,這也說明你的形式,所以它說LIMIT的第一個和第二個參數代表什麼。 '$ max'在你的情況下是錯誤的,它總是每頁的數字,如此恆定,所以你的情況是50。 https://dev.mysql.com/doc/refman/5.0/en/select.html – hakre