Mysqli_query()期望参数1为mysqli, null给定?让人困惑


Mysqli_query() expects parameter 1 to be mysqli, null given? Confusing?

  define('DB_HOST', 'localhost');
  define('DB_USER', '******');
  define('DB_PASSWORD', '************');
  define('DB_NAME', '***********');
 $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
 class User {
 function checkUser($uid, $oauth_provider,$username,$email,$twitter_otoken,$twitter_otoken_secret) 
{
    $query = mysqli_query($dbc,"SELECT * FROM si_table WHERE oauth_uid = '$uid' and oauth_provider = '$oauth_provider'");
    $result = mysqli_fetch_array($query);
    if (!empty($result)) {
        # User is already present
    } else {
        #user not present. Insert a new Record
        $query = mysqli_query($dbc,"INSERT INTO si_table (oauth_provider, oauth_uid, user_name,email_id,twitter_oauth_token,twitter_oauth_token_secret) VALUES ('$oauth_provider', $uid, '$username','$email')") ;
        $query = mysqli_query($dbc,"SELECT * FROM si_table WHERE oauth_uid = '$uid' and oauth_provider = '$oauth_provider'");
        $result = mysqli_fetch_array($query);
        return $result;
    }
    return $result;
}

}

我得到这个错误!我不知道为什么?

mysqli_query()期望参数1为mysqli, null,在第14,15,20,21和22行给出!

global $dbc;添加到checkUser的开头。