2015-10-05 119 views
1

我想訂購「排名」,但它不起作用, 我嘗試了很多事情,但我找不到解決方案。ORDER BY(row)DESC

$query = $handler->query("SELECT * FROM login ORDER BY rank DESC WHERE rank > 4 AND rank < 7 LIMIT 10"); 
  • 我怎樣才能得到上面的代碼才能正常工作?

事情我已經嘗試:

  • ORDER BY rank DESC末,和;
  • 刪除DESC,但這也沒有奏效。

我不知道如何解決這個問題,因爲網頁甚至沒有加載請求它。

+2

'選擇:在哪裏order'。如果你的查詢調用有錯誤處理,你會被告知有關語法錯誤。 –

+0

是的,你的下一個任務(包括:學習和實現)確實應該是錯誤處理。否則你會浪費你的時間與野生猜測這幾乎肯定會導致迷信和巫術;-) – VolkerK

+0

另外,你還需要防止[SQL注入](http://stackoverflow.com/questions/ 60174/how-can-i-prevent-sql-injection-in-php)。這並不嚴格適用於這個問題中的例子,但它始終是一個問題:) – Brian

回答

4

整理後應在where子句

$query = $handler->query("SELECT * FROM login WHERE rank > 4 AND rank < 7 ORDER BY rank DESC LIMIT 10"); 
+0

噢,不錯,我在極限10後試過它,這就是爲什麼它不工作,我認爲... –

+0

是的,因爲它沒有工作。 –

0

嘗試這樣

$query = $handler->query("SELECT * FROM login WHERE rank > 4 AND rank < 7 ORDER BY rank DESC LIMIT 10") 
+0

我已經在接受的答案前9秒添加了我的答案。我需要刪除這個嗎? –