mysqli_query()返回完整表的空结果

时间:2014-04-23 21:49:43

标签: php mysql sql

我正在创建一个页面,查询一个表,查看按入口时间排序的所有结果的所有列,并按限制降序排列。当我查询行的计数时,查询工作得很好,但是当我尝试再次查询表中的数据时,我什么也得不到。我决定尝试将查询缩减到"SELECT * FROM comments",但在事先"SELECT COUNT(*) AS count FROM comments"之前我仍然没有结果。我尝试过使用mysqli_error(),但是没有给我任何信息。

查询似乎没有失败,因为mysqli_query()的结果不是false,当我在phpMyAdmin中查询时,查询起作用。我的代码下面的一小部分

//open databases
require_once($root . "databases/data.php");

//get number of suggestions in comments table
$cquery = mysqli_query($cbase, "SELECT COUNT(*) AS count FROM comments"); //this works
$c = mysqli_fetch_array($cquery);
$count = $c["count"];

//get all suggestions
//this query fails
$queryText = "SELECT * FROM comments ORDER BY time DESC LIMIT " . (($page - 1) * $pageLimit) . ", " . $pageLimit;
$query = mysqli_query($cbase, $queryText);

//validate query
if($query === false)
{
    $failed = true;
}

//get all comments from query
while(!$failed && $array = mysqli_fetch_array($result))

2 个答案:

答案 0 :(得分:0)

请在第3行尝试此操作

$c = mysqli_fetch_assoc($cquery);

您也可以尝试这样做,

$c = mysqli_fetch_array($cquery, MYSQLI_ASSOC);

答案 1 :(得分:0)

在while循环中读取查询结果时,您只是使用了错误的变量。您在$ query中保存查询结果时mysqli_fetch_array($result),因此它应为mysqli_fetch_array($query)