// 以下为不正常运行的代码,运行状态,好像 while 成了一个死循环 
// 修改的目的,是想将这个封装一下,先定义一个方法 
每次while一下就执行$DB_Result = mysql_query($Sql, $DB_Conn) or die('提示:操作失败:'.mysql_error()); 如何能成?这一句只能执行一次。

解决方案 »

  1.   

    function GetRow($Sql) 

    $DB_Result = mysql_query($Sql, $DB_Conn) or die('提示:操作失败:'.mysql_error()); 
    return mysql_fetch_array($DB_Result); 
    } $Sql = "select * from Mac_InfomationBigClass order by BigClassSerial asc"; 
    while($Row = GetRow($Sql)) 

      // 循环代码 
    } 你的那个函数没有意义
    取result中的记录,只能用mysql_fetch_array
    这个是取记录,并将指针移到下一行
      

  2.   

    function GetRow($Sql) 

    global $DB_Conn;
    $DB_Result = mysql_query($Sql, $DB_Conn) or die('提示:操作失败:'.mysql_error()); 
    return mysql_fetch_array($DB_Result); 
      

  3.   


    这是一个方法,
    也可以把$DB_Conn以参数的形式带入到汉书中去
      

  4.   

    // 以下为不正常运行的代码,运行状态,好像 while 成了一个死循环 
    // 修改的目的,是想将这个封装一下,先定义一个方法 
    function GetRow($qid) 

    return mysql_fetch_array($qid); 
    } $Sql = "select * from Mac_InfomationBigClass order by BigClassSerial asc"; 
    $query = mysql_query($sql, $db_conn);
    while($Row = GetRow($query)) 

      // 循环代码 
      

  5.   

    你这封装基本上没有啥实际意义,
    只是将换个函数名而矣.function GetRow(& $qid) 

      return mysql_fetch_array($qid); 

    死循环,加个引用或者global $qid;试试.
    因为mysql_fetch_array执行一次,结果集就要下移,直到结束为止.
    感觉如果不加的话,你这个结果集启示没有结束.因为指针永远不会移动.