function wuMing(){
    global $mysqli;
    $x="select * from x";
    $xun=$mysqli->query($x);
    $i=0;
    while($x=$xun->fetch_assoc()){
        echo $a=$x['Name'],$i++.'<hr>';
        wuMingShengCheng($a);
    }
}
wuMingShengCheng 是1个生成HTML的函数。
通过传来的$a 去循环1个栏目下的文章。当执行 wuMing(); 时。
里面的  while 循环了 第一个,执行了wuMingShengCheng();
在循环 while 也echo $a出来了 但不执行wuMingShengCheng();输出的结果是  $a  输出成功
  $a   生成成功
  $a  输出成功
  然后无下文了在while里,如不执行wuMingShengCheng($a);的话
输出时完整的。例如$a里有5条记录。都能完整输出。

解决方案 »

  1.   

        while($x=$xun->fetch_assoc()){
            echo $a=$x['Name'],$i++.'<hr>';
    //        wuMingShengCheng($a);
        }
    这样能执行?
    如果是的话,那就是 wuMingShengCheng 的问题了
      

  2.   


    wuMingShengCheng(); 有执行成功1次,可以说明是可执行的,
    wuMingShengCheng();里没有其他循环,只是一个过程最后就$mysqli->close();而已。
      

  3.   

    那你贴出 wuMingShengCheng 的代码
      

  4.   

    while后。有关闭结果集和mysqli。
      

  5.   

        function wuMing(){
        global $mysqli;
        $x="select * from x";
        $xun=$mysqli->query($x);
        $i=0;
        while($x=$xun->fetch_assoc()){
            echo $a=$x['Name'],$i++.'<hr>';
            wuMingShengCheng($a);
        }
    }
    function wuMingShengCheng($a){
        echo $a;
    }
    就是这么简单的  输出为name1 
    name1
    name2
    就三条。
    name1 wuMing echo 出来的
    name1 wuMingShengCheng echo 出来的
    name2 wuMing echo 出来的
    没了。
    如果是wuMingShengCheng 的问题。而这个函数只有echo。没其他。
      

  6.   

    你不是说 最后就$mysqli->close();而已 吗?
      

  7.   

    主要的是,这个函数体里,是生成,过程化的生存。,假如这个函数体里就是一个ECHO 结果也是一样。
    现在想知道的 while 里循环执行函数,有什么特别点的东西没。
      

  8.   


     function wuxsming($fenleiming){
        global $mysqli;
        echo $fenleiming;
        $daohan="select * from class where Name='$fenleiming'";
        $dh=$mysqli->query($daohan);
        $d=$dh->fetch_assoc();
        echo $xiaoshuofenlei=$d['Name'];
        $dh->free();
        $mysqli->close();
    }
      

  9.   

    你在 wuxsming 中有 $mysqli->close();
    而 $mysqli 是全局的(global $mysqli;)
    那么当你再次进入 wuxsming 时,$dh=$mysqli->query($daohan); 能执行吗?
      

  10.   


    能执行,不过只是1次。
    2个函数体,都在不同的文件。 wuMingShengCheng() 是在B文件。被A文件的wuxsming()里的while循环调用。wuxsming()的while完后才close mysqli。
    而wuMingShengCheng()执行完后也会close mysqli然而,wuxsming()的while执行了第二次后,wuMingShengCheng就不执行了。