我的msqli代码有一个奇怪的问题。我复制了我的其他代码的一部分,我得到了这个:
$query=mysqli_query($mysql,"SELECT COUNT (*) AS number FROM table");
$query=mysqli_fetch_assoc($query);
$query=$query['number'];
我认为我错了一些东西,但我发现这个代码没有问题,所以我复制粘贴了整个其他工作代码并且它不起作用,而它仍然在另一个文件中完美地工作。查询返回一个布尔值。任何想法如何使它工作?
答案 0 :(得分:0)
发布为社区维基。
从MySQL手册上的功能:
“默认情况下,函数名称和后面的括号之间不能有空格。这有助于MySQL解析器区分函数调用和对函数名称与函数同名的表或列的引用但是,允许使用函数参数的空格。“
http://dev.mysql.com/doc/refman/5.7/en/functions.html
答:从COUNT (*)
=>中删除空格COUNT(*)
。
COUNT()
是一个聚合“函数”。只是出于争论的缘故; table
是一个MySQL保留字,应该是它的实际名称。
如果您仍希望使用该名称(如果是这种情况),请将其打包为刻度:
SELECT COUNT(*) AS number FROM `table`
检查查询错误:
另外,使用相同的$query
变量是不好的做法。
还要确保使用相同的MySQL API进行连接,mysqli_
而不是另一个。