mysql和php语法错误
我收到MYSQL错误,我的答案是:mysql和php语法错误,php,mysql,Php,Mysql,我收到MYSQL错误,我的答案是: $SQL = "SELECT * FROM `".TBL_DEVICE."` WHERE DEV_STATUS='1' $where ORDER BY DEV_TYPE ASC"; 错误如下 您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 第1行“按开发人员类型ASC订购”附近 SELECT * FROM `device` WHERE DEV_STATUS='1' AND DEV_ID = ORDER BY DEV_TYP
$SQL = "SELECT * FROM `".TBL_DEVICE."` WHERE DEV_STATUS='1' $where ORDER BY DEV_TYPE ASC";
错误如下
您的SQL语法有错误;检查手册
对应于您的MySQL服务器版本,以便使用正确的语法
第1行“按开发人员类型ASC订购”附近
SELECT * FROM `device` WHERE DEV_STATUS='1' AND DEV_ID = ORDER BY DEV_TYPE ASC
您尚未为-DEV_ID指定值
SELECT * FROM `device` WHERE DEV_STATUS='1' AND DEV_ID = '*add here*' ORDER BY DEV_TYPE ASC
好吧,至少你把它打印出来了,这是大多数人都不会做的事情,这让97%的问题变得显而易见:——) 您的
$where
变量似乎不完整,因为它包含和DEV_ID=
,但没有要与之比较的内容
您需要修复生成该
where
子子句的代码,以便生成的查询有效。您的问题对我来说不够清楚,但在您的sql代码中
$SQL = "SELECT * FROM ".TBL_DEVICE." WHERE DEV_STATUS='1' $where ORDER BY DEV_TYPE ASC";
为什么要使用$where
变量??它的期望值是多少
从表中选择所有数据的基本结构为:
$SQL = "SELECT * FROM table_name WHERE id = desire_id";
希望这有帮助我假设您的变量“$where”有这个值=>”和DEV_ID=“ $where=“和DEV_ID=” 首先:完成变量“$where” $where=“AND DEV_ID=”。您在这里应该是一个值。” 第二:如果你不介意的话,把变量名改成相对的 第三:假设查询
$where = "AND DEV_ID = ".your_supposed_to_be_a_value_here.";
$SQL = "SELECT * FROM `".TBL_DEVICE."` WHERE DEV_STATUS='1' $where ORDER BY DEV_TYPE ASC";
“和DEV_ID=订单“-您缺少一个值..
其中DEV_STATUS='1'和DEV_ID=ORDER BY
显然是错误的。问题是无论您在哪里设置$where
。它得到的是值和DEV_ID=
,但这显然不是应该有的全部。实际上,您没有发布足够的代码。请参阅如何创建一个。检查$,如果它没有打印正确的值。@AdrianM。不,他应该修复设置$where
的代码。此外,此代码可能是SQL注入的主题。请不要在SQL查询中使用字符串连接,而要使用准备好的语句。
$where = "AND DEV_ID = ".your_supposed_to_be_a_value_here.";
$SQL = "SELECT * FROM `".TBL_DEVICE."` WHERE DEV_STATUS='1' $where ORDER BY DEV_TYPE ASC";