【发布时间】:2015-03-10 19:32:06
【问题描述】:
我从这里使用 mysqli 类:https://github.com/joshcam/PHP-MySQLi-Database-Class
...这个原始查询有问题:
$q = mysql_query("SELECT id, value, (
SELECT COUNT( * )
FROM ".$dbprefix."pages
WHERE roles = ".$dbprefix."roles.id
)count
FROM '".$dbprefix."roles' ORDER by id ASC");
$result = $db->rawQuery ($q);
它不起作用,我在 MysqliDb.php 的第 776 行准备查询时遇到致命错误 - mysql 查询本身有效,但是当我将它与 mysqli 类一起使用时它不起作用。我相信这与 COUNT (*) 或条纹标签或...有关。我已经尝试了几件事,但我卡住了。也许我不是唯一有这个问题的人——也许有人可以帮忙?这会很棒!感谢您的建议!
【问题讨论】:
-
您遇到了什么错误?
-
你确定它有效吗? ist 应该是“SELECT id, value, ( [...] ) AS count [....]” 不应该吗?而且您至少应该将 count 放入反引号中,因为它是一个关键字。
-
首先,你为什么在这里使用
mysql_query()?我的猜测是$q包含false的值而不是您的查询表示为字符串(尝试var_dump($q)看看您得到了什么。其次,您为什么要在SELECT 语句中尝试子选择?您是否考虑过JOIN ?