解决方案 »

  1.   

    mysql_fetch_array 返回的是一维数组,那样遍历自然是不对的。你print_r($rows); 看看就知道了。
      

  2.   


    这样啊,foreach读取数组还分一维和二维数组吗?
      

  3.   

    foreach 是对数组的第一维进行循环的
    你 $rows=mysql_fetch_array($result); 后 $rows 就是一个一维数组
    foreach($rows as $val) 中 $val 是值,而不是数组。不存在 $val['name'] 等
      

  4.   

    猜测你是想这样:
    while($row=mysql_fetch_array($result)){
       $rows[] = $row;
    }
    foreach($rows as $val)
    {
       姓名:<?php echo $val['name'];?>;
       年龄:<?php echo $val['age'];?>;
      

  5.   

    $rows=mysql_fetch_array($result);
    返回的是一维数组吧,不是二维数组,所以这样遍历出问题了
      

  6.   


    我想用foreach循环出数据,用foreach还要用while两个循环啊,麻烦
      

  7.   

    foreach 只能循环数组
    你可以用 for 循环
    $result = mysql_query($query);
    for(; $val=mysql_fetch_array($result); )
    { ?>
       姓名:<?php echo $val['name'];?>;
       年龄:<?php echo $val['age'];?>;
    <?php }
      

  8.   

    $rows=mysql_fetch_array($result); 只拿到一行記錄,foreach只是循環這一行記錄的每一個字段內容,並不是循環每一條記錄。所以mysql_fetch_array($result); 必須放在循環體中,才能獲取到所有記錄。