为什么我没有在查询代码中获得所有结果?

时间:2011-08-09 15:27:40

标签: php mysql extjs

我遇到了问题。以下代码在我的本地工作正常,但在实时服务器上,它无法正常工作..我应该得到两行,但在实时服务器上我只得到1个结果。

$query = mysql_query('SELECT * FROM `wspm_t_colors`');
$result = mysql_fetch_object($query);
print json_encode($result);

可能是什么错误?...

4 个答案:

答案 0 :(得分:2)

我无法相信你会得到两行,以获得你必须做的所有行:

$query = mysql_query('SELECT * FROM `wspm_t_colors`');
while($result = mysql_fetch_object($query))
{
    print json_encode($result);
}

mysql_fetch_object / array / row总是只返回一行并将指针移动到下一行,如果没有下一行则返回false。

答案 1 :(得分:1)

我认为这是因为mysql_fetch_object仅返回单行结果。你需要这样的东西:

$query = mysql_query('SELECT * FROM `wspm_t_colors`');
while($row = mysql_fetch_array($query))
{
   \\access each result here
}

答案 2 :(得分:1)

您的代码只获得一行。 mysql_fetch_object()函数只返回一行。你需要尝试这样的事情:

$query = mysql_query('SELECT * FROM `wspm_t_colors`');
$json = array();
while ($result = mysql_fetch_object($query))
    $json[] = $result;
print json_encode($json);

答案 3 :(得分:0)

我看不出你如何在本地

中拥有两行
$array = array();
$query = mysql_query('SELECT * FROM `wspm_t_colors`');
while($result = mysql_fetch_object($query))
{
    $array[] = $result;
}
print json_encode($array);