-6

我不知道如何解决这个问题。错误在哪里?我试图找出答案,我认为这与AND有关

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

3 回答 3

4

尝试这个:

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

问题是:

  • AND type="pic"包含在字符串中,或​​以任何方式连接
  • AND type="pic"显然是为了适应一个WHERE类,它应该在FROM子句之后,但在ORDER子句之前
  • 您只需要AND连接多个WHERE子句 - 您只有一个。
于 2013-01-11T08:06:52.993 回答
1

the WHERE clause must come first before ORDER and LIMIT

$query = mysql_query ("SELECT * FROM photos WHERE type='pic' ORDER BY id DESC LIMIT ".$queryStart.", 5");
于 2013-01-11T08:08:32.357 回答
1

AND type="pic"是超级错误的。您应该将其放在查询字符串中。此外,where 子句不会出现在LIMIT子句之后。LIMIT子句应该放在最后。所以使用这个查询。

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

注意:不要使用mysql_*函数。它们已被弃用。使用PDOMySQLi

于 2013-01-11T08:09:54.163 回答