既然你用的是$name[$i],
那么把:echo  $result[0];
改为:echo  $result[$i];

解决方案 »

  1.   

    是不是想这样子?
    $cnt = 0;
    for  ($i=0;$i<  =9;$i++){
          $sql="select  page  from  table1  where  name='"$name[$i]"'";
          $rs = mysql_query($sql);
          $result  =  mysql_fetch_array($rs);
          $cnt =$cnt+$result[0];
      }
    echo $cnt;
      

  2.   

    $name[$i]从哪里来的?
    你好像在{}内少打了几句。
    $query=("select name from table1");
    $result0=mysql_num_rows($query[$i]);
    然后再把你那句改为:
    $sql="select page from table1 where name=$result0";
    这样name才会随$i的值变化而变化。      
      

  3.   

    我的改一下:
    $query=("select  name  from  table1");
    $result0=mysql_num_rows($query);
    然后再把你那句改为:
      $sql="select  page  from  table1  where  name=$result0[$i]";应该是这样,共同进步.
      

  4.   

    我还是不太明白,你的意思是不是在数据库中name字段里有很多个值相同数据,然后再通过name把所对应的page值全部取出来?
      

  5.   

    $a=array(0,0,0,0,0,0,0,0,0);
    $b=array(0,0,0,0,0,0,0,0,0);
    $name=array("","张三","李四","王五","赵六");
    for($i=1; $i<=4; $i++) {
       $query = mysql_query("select page from table1 where name='".$name[$i]."' and time>='".$start."' and time<='".$end."'");
       $a[$i] = mysql_num_rows($query);
       $ap[$i] =mysql_query("SELECT sum(page) FROM table1 WHERE name='".$name[$i]."' and time>='".$start."' and time<='".$end."'");
       $query = mysql_query("select * from fabao where fapeople='".$n[$i]."' and time>='".$start."' and time<='".$end."'");
       echo $ap[$i];  
    }
      

  6.   

    $a=array(0,0,0,0,0,0,0,0,0);
      $b=array(0,0,0,0,0,0,0,0,0);
      $name=array("","张三","李四","王五","赵六");
      for($i=1;  $i<  =4;  $i++)  {
            $query  =  mysql_query("select  page  from  table1  where  name='".$name[$i]."'  and  time>  ='".$start."'  and  time<  ='".$end."'");
            $a[$i]  =  mysql_num_rows($query);
            $b[$i]  = mysql_query("SELECT  sum(page)  FROM  table1  WHERE  name='".$name[$i]."'  and  time>  ='".$start."'  and  time<  ='".$end."'");
            echo  $b[$i];    
      }
      

  7.   

    我想统计每个人的办报的数目和总页数(page),每个人办理的份数可以由
    mysql+num_rows()求出,但是page我一开始是用mysql_fetch_array($query)
    求得的,这样每一条记录的page不是都在一个数组中存着吗?
    我就是想把这个数组中的每个单元求出来,然后求和。
    后来用了sum(),但是网页上一直显示不出来,
    总是出 Resource #ID 3.
      

  8.   

    你的代码错了,应该:
    把这些替换原来的for循环:$query=mysql_query("select page from table1 where name='".$name[$i]."' and time>  ='".$start."' and time<='".$end."'");
    while ($a=mysql_num_rows($query))
            {
              echo $a[$i];                    
             }
    $query2=mysql_query("SELECT sum(page) FROM table1 WHERE name='".$name[$i]."' and  time>='".$start."' and time<='".$end."'");
    while ($ap=mysql_num_rows($query))          
            {
             echo  $ap[$i];                  
             } 
    $query3=mysql_query("select * from fabao where fapeople='".$n[$i]."' and time> ='".$start."' and time<='".$end."'");(试一下,把错误告诉我,我一直在线)
      

  9.   

    你应该说出表结构,和需要查询得到的结果
    你那样的程序就算得到也太过复杂,那么多的query
    其实应该可以写出SQL语句的
      

  10.   

    foreach(array_expression as $value) statement
    foreach(array_expression as $key => $value) statement
      

  11.   

    举个例子吧:
    表为table1,字段有 ID,name,page,send,notes和4条记录:
    ID,name, page,  reciever,       time,  notes;
     1, 张三,   4,      李四,2002-01-01, 已经送出
     2,王五,   3,      赵六,2002-01-15, 已经送出
     3,王五,   6,      李四,2002-02-01, 已经送出
     4,张三,   9,      赵六,2002-02-15, 已经送出
     5, 田七,   2,      刘八,2002-03-01,已经送出
     6,张三,   3,      刘八,2002-03-15,已经送出
     ……
     …………
    假如已经有了这样的6条记录,我现在要统计2002年1月到3月信息发送情况
    我设了一个数组$a分别来存每个人的情况;
    初始化:
    $name=array("","张三","李四","田七"); 
    $a=array(0,0,0,0);//处理信息的人有四个,每个人处理总份数分别存入$a[1],$a[2],$[3],$[4]
    $ap=array(0,0,0,0);//用来存放所的信息页数(page)的和。for($i=1;$i<=3;$i++){
      $query=mysql_query("select page from table1 where name='".$name[$i]."' and time>='2002-01-01' and time <='2002-03-31');
      $a[$i]=mysql_num_rows($query);//这里得到每个人处理信息的总份数,并放到$a中去
      $result=mysql_fetch_array($rs);
      for ($j=a[$i],$j=0,$j--){
        $ap[$i]=$ap[$i]+$result[$j];        
      }
    }
    for($i=1;$i<=3;$i++){
      echo $name[$i]." ".$a[$i]." ".$ap[$i]."<br>";
    }
    以上是最初的思路,代码不会有什么问题吧?后来我想用sum()于是
    for($i=1;$i<=3;$i++){
      $query=mysql_query("select page from table1 where name='".$name[$i]."' and time>='2002-01-01' and time <='2002-03-31');
      $a[$i]=mysql_num_rows($query);//这里得到每个人处理信息的总份数,并放到$a中去
      $ap[$i]=mysql_query("select sum(page) from table1 where name='".$name[$i]."' and time>='2002-01-01' and time <='2002-03-31');
    }
    解果中出现了 Resourc ID #1,#号后是一些数字,
    但在phpMyAdmin中我运行了一下代码,显示结果是正确的,不知这样输出对不对。
      

  12.   

    for($i=1;$i<  =3;$i++){
          $query = mysql_query("select  count(ID) as a, sum(page) as   ap from  table1  where  name='".$name[$i]."'  and  time>='2002-01-01'  and  time<='2002-03-31');
          $rows = mysql_fetch_array($query);
          $a[$i] = $rows['a'];//这里得到每个人处理信息的总份数,并放到$a中去
          $ap[$i]=$rows['ap'];
    }page字段改为int类型
      

  13.   

    for($i=1;$i<  =3;$i++){
          $query = mysql_query("select  count(ID) as a, sum(page) as   ap from  table1  where  name='".$name[$i]."'  and  time>='2002-01-01'  and  time<='2002-03-31');
          $rows = mysql_fetch_array($query);
          $a[$i] = $rows['a'];//这里得到每个人处理信息的总份数,并放到$a中去
          $ap[$i]=$rows['ap'];
    }page字段改为int类型
      

  14.   

    晕倒!
    老兄 没看我前面给你的帖子的恢复吗?
    要先执行$res=mysql_query($sql),得到resultid,
    然后才能用mysql_fetch_array($res)、mysql_num_rows进行操作!!