这是打印的结果,大家帮看看大类id:1  大类名字: 广告组测试
大类id:5  大类名字: 1
大类id:6  大类名字: 2
大类id:4  大类名字: aaa
大类id:7  大类名字: 添加广告组
4Array
(
    [0] => 3
)Array
(
    [0] => 3
    [1] => 广告组测试22
)Array
(
    [0] => 3
    [1] => 广告组测试22
    [2] => 
)Array
(
    [0] => 3
    [1] => 广告组测试22
    [2] => 
    [3] => 
)

解决方案 »

  1.   

    大类id:3  大类名字: 广告组测试22
    大类id:1  大类名字: 广告组测试
    大类id:5  大类名字: 1
    大类id:6  大类名字: 2
    大类id:4  大类名字: aaa
    大类id:7  大类名字: 添加广告组这是现在大类的数据,为什么 echo count($DaGetResult) 打印的和实际不相等
      

  2.   

    $DaResult = mysql_query($sql);$DaGetResult = mysql_fetch_array($DaResult);=========================================
    //上面的是找出大类名字echo count($DaGetResult)."<br>";for($i=0; $i<count($DaGetResult) ;$i++)
    {
    $sDa[] = $DaGetResult[$i];
    echo "<pre>";
    print_r($sDa);//这里也是大类的名字,为什么结果会错呢?
    echo "</pre>";
    ========================================================================
    老实话,你整个代码大类小类的都贴上来了,逻辑我没看明白,但从这段代码分析,array mysql_fetch_array ( resource result [, int result_type] )result_type 的默认值是BOTH,所以你返回的是一个既包含键名索引也包含数字索引的数组,数组长度是原来的两倍,你以这个长度做循环肯定是要出问题的,但是不知道你的问题是不是和这个有关
      

  3.   

    根据你其他部分的代码需要, 你使用的是数字索引的方式,所以应该做如下修改$DaResult = mysql_query($sql);$DaGetResult = mysql_fetch_array($DaResult , MYSQL_NUM);这样 echo count($DaGetResult) 的时候就应该和实际相同了
      

  4.   

    楼上,你好:
    我是想做成二级分类的形式,就是大类包含他的小类
    大类名字:广告组测试22
    大类名字:广告组测试
    大类名字:1
    大类名字:2
    大类名字:aaa
    大类名字:添加广告组这个是现在的大类名字,我想通过数组的循环来做这个就下面这个:
    for($i=0; $i<count($DaGetResult) ;$i++)
    {
    $sDa[] = $DaGetResult[$i];
    echo "<pre>";
    print_r($sDa);
    echo "</pre>";
    $xiaosql = "select * from t_ad,t_pages,t_group,t_adgroup where"
    ."t_ad.user_id = '1' and t_ad.id = t_adgroup.ad_id"
    ."and t_group.id = t_adgroup.group_id and t_pages.target_id = t_ad.target_id"
    ."and t_group.name = '". $sDa ."' ";
    $xiaoResult = mysql_query($xiaosql);$xiaoGetReult = mysql_fetch_array($xiaoResult);
      for($m=0;$m<count($xiaoGetReult);$m++)
      {
       $aClass[$sDa][] = $xiaoGetReult[$m];
      }
    }
    可是,在执行这个的时候,大类的数组打印结果:
    2Array
    (
        [0] => 广告组测试22
    )Array
    (
        [0] => 广告组测试22
        [1] => 
    )
    为什么???
      

  5.   

    <?php
    $host = "localhost";
    $username = "root";
    $pwd = "123456";
    $link = mysql_connect($host,$username,$pwd);
    mysql_select_db("localhost");$aClass = array();
    $sDa = array();//取得大类名字,主要是比较看抓到数据和下面数组抓的相同吗?
    是要删掉的$sql = "select distinct t_group.name as gname from t_ad,t_group,t_adgroup".
    " where t_ad.user_id='1' and t_ad.id=t_adgroup.ad_id and t_group.id=t_adgroup.group_id";//这部分抓实际的大类名字
    $Result = mysql_query($sql);while($RResult = mysql_fetch_array($Result)){ echo "<br>";
    echo "<pre>";
    echo "大类名字:".$RResult['gname'];
    echo "</pre>";
    }//这部分抓大类,小类并形成数组打印出来
    $DaResult = mysql_query($sql);$DaGetResult = mysql_fetch_array($DaResult,MYSQL_NUM);echo count($DaGetResult)."<br>";for($i=0; $i<count($DaGetResult) ;$i++)
    {
    $sDa[] = $DaGetResult[$i];
    echo "<pre>";
    print_r($sDa);
    echo "</pre>";
    $xiaosql = "select * from t_ad,t_pages,t_group,t_adgroup where"
    ."t_ad.user_id = '1' and t_ad.id = t_adgroup.ad_id"
    ."and t_group.id = t_adgroup.group_id and t_pages.target_id = t_ad.target_id"
    ."and t_group.name = '". $sDa ."' ";
    $xiaoResult = mysql_query($xiaosql);$xiaoGetReult = mysql_fetch_array($xiaoResult);
    for($m=0;$m<count($xiaoGetReult);$m++)
     {
    $aClass[$sDa][] = $xiaoGetReult[$m];
     }
    }?>
    这是我现在的代码、
      

  6.   

    大类名字:广告组测试22
    大类名字:广告组测试
    大类名字:1
    大类名字:2
    大类名字:aaa
    大类名字:添加广告组
    1Array
    (
        [0] => 广告组测试22
    )这是结果,为什么不行呢??着急,下班了,老板催