2013-01-11 69 views
-5

我不知道如何解决这个问题。错误在哪里?我试图找出我认为这已经得到的东西做的SQL查询语法问题

$query = mysql_query ("SELECT * FROM photos ORDER BY id DESC LIMIT ".$queryStart.", 5" AND type="pic"); 
+1

这将是很好的..如果你粘贴错误你得到 – coolguy

+0

我第一次downvoted,但现在当我重新读这个问题时,它实际上很清楚 - 只是该主题是相当糟糕。你应该*不*问一个标题为“有什么问题,但我不知道那是什么”的问题...... – eis

回答

4

试试这个:

$query = mysql_query ("SELECT * FROM photos WHERE type='pic' ORDER BY id DESC LIMIT $queryStart, 5"); 

问题是:

  • AND type="pic"没有包含在字符串中,或​​以任何方式连接在一起
  • 您的AND type="pic"显然是inten DED适合在一个WHERE化酶,这应该是来FROM条款之后,但在ORDER条款
  • 之前,您只需要一个AND来连接多个WHERE条款 - 你只能有一个。
+0

非常感谢你,我欣赏它:) – user1968578

1

WHERE条款必须首先前ORDERLIMIT

$query = mysql_query ("SELECT * FROM photos WHERE type='pic' ORDER BY id DESC LIMIT ".$queryStart.", 5"); 
+0

非常感谢你 – user1968578

+0

不客气' :D' –

1

AND type="pic"是超级错误。你应该把它放在查询字符串中。 LIMIT条款后面也不出现where子句。 LIMIT条款应该在最后。所以使用这个查询。

mysql_query("SELECT * FROM photos WHERE type='pic' ORDER BY id DESC LIMIT $queryStart, 5); 

注:不要使用mysql_*功能。他们是deprecated。使用PDOMySQLiMySQLi

+0

非常感谢 – user1968578