为什么我的代码只返回php mysql中的每秒结果?

时间:2013-01-07 09:26:11

标签: php mysql

我一直在编写一些从MySQL数据库中提取条目的代码。这些是数字1到38

但是,它只返回每秒数,即2,4,6,8而不是1,2,3,4。

$result = mysql_query("select (caseID) FROM `case` order by caseID")
 or die(mysql_error());  

while(mysql_fetch_array( $result )) 
{ 
    $row = mysql_fetch_assoc($result); 
    $countName= $row['caseID'];

    Print $countName;
} 

我尝试了各种更改并将代码减少到最低限度。但似乎没有任何效果。

2 个答案:

答案 0 :(得分:6)

两次调用mysql_fetch_array,这就是原因。

试试这个

while($row=mysql_fetch_assoc( $result )) 
{ 
$countName= $row['caseID'];
 print $countName;
} 

答案 1 :(得分:0)

这是因为你正在调用mysql_fetch_array,它会检索一个结果,然后你调用mysql_fetch_assoc,它会检索另一个结果。然后重复这一过程,直到没有剩下的结果为止。

或者,换句话说,您在不使用它的情况下获取一个结果,然后获取随后使用的另一个结果,有效地跳过其他每个结果。

这应该做的工作:

while($row = mysql_fetch_assoc($result)) 
{ 
    print $row['caseID'];
}

另外,请查看the documentation。把目光转向一个显示“警告”的大盒子,并在其中有一个停止标志。