2011-09-29 136 views
3

我遇到了一個我正在創建的腳本的問題。我正在使用PHP/SQL語句ORDER BY。我有一個topsite這裏我用下面的MySQL訂單/限制問題

$sql = "SELECT * FROM topsites WHERE categorie = '".$_GET['c']."' ORDER BY in DESC, out DESC LIMIT ".$perpage.""; 

的劇本,我需要知道,如果有一種方法我可以創建不同的頁面,說第一頁是1-50,第二個是50-100

我在谷歌搜索這個問題的解決方案,但我似乎無法找到任何東西。

+0

我在將來會看到SQLi。 –

+0

這與PHP無關。這是一個MySQL的東西。閱讀關於MySQL選擇語法的文檔(http://dev.mysql.com/doc/refman/5.5/en/select.html)。它詳細說明了如何使用LIMIT子句來處理這些事情。同樣,'in'是一個mysql保留字,當你運行這個查詢時,可能最終會出現語法錯誤,更不用說大膽的SQL注入漏洞了。 –

+0

[sql注入...等等,等等,鮑比表,轉義字符串....](http://php.net/manual/en/function.mysql-real-escape-string.php) – cwallenpoole

回答

5
SELECT .... LIMIT CountToSkip, CountToSelect 

第一頁將是LIMIT 0,50LIMIT 50,50第二等

0

你正在尋找的技術稱爲分頁。您可能希望使用SQL的LIMIT運算符來實現此目的,但網上有很多鏈接可指向PHP分頁資源。

0

LIMIT 0,100LIMIT 100,100

很容易。