php寻呼机代码中的检索sql查询错误

php寻呼机代码中的检索sql查询错误,php,mysql,sql,pager,Php,Mysql,Sql,Pager,我的问题是,我希望一个页面只显示10条记录 我在以下网站上找到了这段很棒的代码: 它是有效的,但当我添加一个条件时,如: "SELECT * FROM `students` where `Instructor-Email`=". $_SESSION['ID'] ." OR `Instructor-Email` IS NULL LIMIT".$sf.",10" 它不起作用 我怀疑我的查询语法,因此我下载了查询生成器程序(flyspeed sql query),它将查询构建为: "Select *

我的问题是,我希望一个页面只显示10条记录 我在以下网站上找到了这段很棒的代码:

它是有效的,但当我添加一个条件时,如:

"SELECT * FROM `students` where `Instructor-Email`=". $_SESSION['ID'] ." OR `Instructor-Email` IS NULL LIMIT".$sf.",10"
它不起作用

我怀疑我的查询语法,因此我下载了查询生成器程序(flyspeed sql query),它将查询构建为:

"Select * From students Where (`Instructor-Email` = '. $_SESSION['ID'] .') Or (`Instructor-Email` Is Null) LIMIT 0,10" 
但还是没用


你能告诉我有什么问题吗?非常感谢您的努力。

您应该在查询中围绕字段名添加反勾号,如下所示:

`Instructor-Email`=". $_SESSION['ID'] ." OR `Instructor-Email` IS NULL LIMIT".$sf.",10")
(如果该字段确实存在并且包含破折号。)

来自

用于选择、显示、描述、解释和其他返回语句 resultset,mysql_query()在成功时返回资源,在失败时返回FALSE 错误

由于您的错误在您的
mysql\u fetch\u assoc()
上声明了一个传递的布尔参数,请使用phpMyAdmin等工具对照实际数据库检查您的查询。不要忘记检查您的
$sf
,以在所有情况下都包含有效的数字

如果用户不这样做,mysql_query()也将失败并返回FALSE 具有访问查询引用的表的权限

如果您甚至从查询中收到任何结果,您可以检查。 但首先我建议您检查您是否对要查询的表拥有所有必要的权限

如果脚本中只有一个数据库连接,则无需将指定为参数的$con传递给以后的mysql函数调用


请参阅Lajos Veres的第一个答案,并始终添加背景符号。

谢谢,但如果您的意思是“我以前做过,但没有成功:(您是否有任何错误消息?您确定此字段在该表中吗?而不是在例如instructors表中吗?是的,我确定我在其他页面中使用了相同的查询,并且该查询工作正常,我认为错误可能位于“查询中的限制,消息错误是因为查询工作不正常而出现的,即:消息错误”警告:mysql_fetch_assoc()希望参数1是resource,布尔值在C:\xampp\htdocs\RecomA\test1.php第86行给出。首先谢谢。但我在我的问题中说,我知道我输入的查询不会出现检索,但问题是我不知道为什么?!关于(`:backticks),我知道当我有类似的名字时应该使用它们(a-b,a_b)但它不起作用:(
"Select * From students Where (`Instructor-Email` = '. $_SESSION['ID'] .') Or (`Instructor-Email` Is Null) LIMIT 0,10" 
`Instructor-Email`=". $_SESSION['ID'] ." OR `Instructor-Email` IS NULL LIMIT".$sf.",10")