在ubuntu上使用xampp错误运行:致命错误:在非对象上调用成员函数rowCount()

I'm testing a program running well using xampp and Windows 7, But when i'm upload to the server using Ubuntu (mysql, php, apache using apt-get) it's getting error

Fatal error: Call to a member function rowCount() on a non-object in /var/www/siarsip/class/user.php on line 56

Here the code snipped :

function getAllUser(){
        $query=$this->db1->query("SELECT a.user_id,a.username,a.password,a.NIP,a.role,b.category,a.input_date,a.last_update FROM users as a RIGHT JOIN user_categories as b ON a.role=b.usercat_id ORDER BY role");
        $jml_data=$query->rowCount();
        if($jml_data>=1){
            $hasil=$query->fetchAll(); //line 56
            return $hasil;
        }else{
            return $jml_data;
        }
    }

I've tried to change line 56 to :

if(!empty($query) AND $jml_data > 0) {

Still not working.

update : Using @cjriii code, i've update line 56 to using this :

if(is_object($query))

{ { code here }

}

Now there's no error, i've tried to login produces same error "Fatal error: Call to a member function rowCount() on a non-object in /var/www/siarsip/class/user.php on line 74"

    function loginUser($username,$password){
        $password_md5=md5($password); 
        $query=$this->db1->query("SELECT*FROM users WHERE username='$username' AND password='$password_md5'");
        if(is_object($query))
{
        $hasil=$query->rowCount(); //line 74
        return $hasil;
    }
}

I've insert the code again to line 74 if(is_object($query)) {

Produces no error. But now i cannot login using the username and password that usually works.

Need another advice bro..

</div>

Two things:

Test if $query is an object before calling a method on it. Thats' where the error comes from.

Second, instead of testing for !empty($query), try testing for is_object($query).

if(is_object($query))
{
    $jml_data = $query->rowCount();
    if($jml_data >= 1)
    {
        //rest of your code here
    }
    else
        return $jml_data;
}

Edit:

Please check the documention on empty(): Your call may be returning a valid value for empty to return false.

http://php.net/empty http://php.net/manual/en/function.is-object.php