为什么我只从print_r($ row)获得[];用PHP?

时间:2009-11-22 04:42:28

标签: php mysql

以下是代码:

$result=mysql_query("select * from choices where a_id='$taskid'")or die(mysql_error());
while($row=mysql_fetch_assoc($result))
{ print_r($row); }

为什么我只有[]?怎么了?

更多: 它不能是空的。更完整的代码如下:

$result=mysql_query("select * from choices where a_id='$taskid'")or die(mysql_error());
   $resultset=array();
 while($row=mysql_fetch_assoc($result))
{  
    $temp=shuffle(array_slice($row,3));

    $row1=array_splice($row,3,7,$temp);
    $resultset[]=$row1;

}

echo json_encode($resultset);

我想将索引3到索引7的mysql查询结果混洗,但只是发现索引3到索引7的值没有被洗牌而返回。其他值在Javascript中为undefined

怎么了?

1 个答案:

答案 0 :(得分:1)

$ row为空。意味着您的SQL查询没有返回任何内容。请尝试以下操作以确保查询正好执行您期望的操作:

echo "select * from choices where a_id='$taskid'";