DeptId  DeptName   DeptNickName  UserId  deptsortid  hidflag  parentid  DeptPhone
1  通信运维中心    NULL            359      1             1    0    NULL
2  调通中心             NULL           359      2             1    0    NULL
3  总调通信处    NULL           359      3             1    0     NULL
7  调通中心44    NULL           359      4             1    0     NULL数据表如图
操作如下:
$sql="select DeptName from tab_enterprisedept where parentid=0";
$result=mysql_query($sql);
$rs=mysql_fetch_array($result);
echo count($rs);
echo "<br>";
for($i=0;$i<3;$i++){
echo $rs[$i];
}输出结果:
3
通信运维中心问题:为什么只输出一个值 后面的DeptName值去哪了?
我想要的结果是
3
通信运维中心 调通中心 总调通信处 调通中心44请大家帮帮忙 谢谢

解决方案 »

  1.   


    while( $rs=mysql_fetch_array($result) ){
    echo count($rs);
    echo "<br>";
    echo $rs[$i];
    }你就调用了一次mysql_fetch_array,指针并不会主动的移动
      

  2.   

    我已经给了for循环了 而且我试过用echo $rs[0]有数据输出 echo $rs[1] $rs[2]等都没有数据输出 不知道是怎么回事,要怎样解决啊。谢谢!!!
      

  3.   

    啊,代码有误$num = '';
    while( $rs=mysql_fetch_array($result) ){
    if( isset($num) ){
       echo $num = count($rs);
       unset($num);
    }
    echo "<br>";
    echo $rs[$i];
    }count($rs)只用输出一次
      

  4.   

    select DeptName from tab_enterprisedept where parentid=0 你只取一条记录
    mysql_fetch_array()没有第二次调用
    你认为的 $r[1],$r[2]这些和$r[0] 同属一行记录,而不是下一行关系
    你对mysql_fetch_array 返回的结果集理解有问题
      

  5.   


    1.mysql_fetch_array($result);一次取一条数据,所以你的代码中$rs只是一条记录,你已经给循环了?,对于取出的这一条数据循环有什么作用呢?2.获取总数用mysql_num_rows($result);所以示例代码如下
    $sql = "select DeptName from tab_enterprisedept where parentid=0";
    $result = mysql_query($sql);
    $total = mysql_num_rows($result);
    echo "total:".$total;
    while($rs = mysql_fetch_array($result){
     print_r($rs);
    }