Fatal error: Call to a member function once_fetch_array() on a non-object in D:\work\php\htdocs\gzhxbh\qqhl\global.php on line 33global.phprequire_once '../init.php'; //$db = Mysql::getInstance(); 如果注释掉这句就出上面的的错误,
if(!$UserDate = $db->once_fetch_array($sql)){
return FALSE;
}
init.php$db = Mysql::getInstance();

解决方案 »

  1.   

    你注释后,$db 为 null
    都不是对象,又何来 $db->method() 呢??
      

  2.   


    init.php$db = Mysql::getInstance();定义了啊
      

  3.   

    本帖最后由 xuzuning 于 2011-10-10 16:20:49 编辑
      

  4.   

    就是其他地方没有,你把$db注释了,所以有关$db的用不了了
      

  5.   

    ...没看仔细,你init.php定义了的,你注释后var_dump($db)看看有没有值
      

  6.   


            $user = checkLogin($author, $pass); //如果执行这里就出现 1楼 的错误 echo '****' .isset ($db); // 打印的是 1
             
             // 如果这里的没注释 $db 是可以用,查询也很正常
    /*$sql = "select * from users where author ='$author' and pass = '$pass'";
    $result = $db->query($sql);
    if(!$db->getRow($result)){
    $msg = "alert('用户名或密码错误!');window.location = document.referrer;";
    qqhlScript($msg);
    }*/function checkLogin($author, $pass) {
        $sql = "select * from users where author ='$author' and pass = '$pass'";
        $UserDate = false;
        //$db = Mysql::getInstance();
        if (!$UserDate = $db->once_fetch_array($sql)) {
            return FALSE;
        }
        return $UserDate;
    }