Php 致命错误:对CTBans-Sourcebans中的非对象调用成员函数fetch_assoc()

Php 致命错误:对CTBans-Sourcebans中的非对象调用成员函数fetch_assoc(),php,Php,我使用来自的CTBAN,问题是:致命错误:在第74行的/home/web/xxx/pages/page.ctbanlist.php中调用非对象的成员函数fetch_assoc 第74行是: while ($row = $query->fetch_assoc()) { $row['communityid']=SteamIDToFriendID($row['steamid']); if($row['ctbantime'] > 0) { if($ro

我使用来自的CTBAN,问题是:致命错误:在第74行的/home/web/xxx/pages/page.ctbanlist.php中调用非对象的成员函数fetch_assoc

第74行是:

while ($row = $query->fetch_assoc())
{
    $row['communityid']=SteamIDToFriendID($row['steamid']);
    if($row['ctbantime'] > 0)
    {
        if($row['ctbantime']<60)
            $row['ctbantime']=$row['ctbantime']." minutes";
        else if($row['ctbantime'] < 3600)
            $row['ctbantime']=round($row['ctbantime']/60, 2)." hours";
        else
            $row['ctbantime']=round($row['ctbantime']/(24*60), 2)." days";
    }
    else
    {
        if($row["active"]==0)
            $row['ctbantime'] = "Expired";
        else
            $row['ctbantime'] = "Never";
    }
    if($row['admin']=="CONSOLE")
        $row["adminname"] = "CONSOLE";
    else
    {
        $admin = $GLOBALS['db']->GetRow("SELECT user FROM sb_admins WHERE authid=\"".$row['admin']."\"");
        $row['adminname'] = $admin["user"];
    }

    if($row['reason'] == "")
    {
        $row['reason'] = "Geen reden opgegeven";
    }

    $data[]=$row;
}
怎么了?当我连接数据库时,什么也没有发生,没有内容。版本SourceBans是1.4.11
谢谢你的帮助和回答

问题在于$query不是一个对象。如果对mysqli_查询的调用失败,它将返回false而不是对象-您需要对此进行检查。您需要发布创建查询的代码。查询中可能存在语法错误。警告:mysqli::mysqli:HY000/2005:第33行/home/web/xxxxxx/pages/page.ctbanlist.php中的未知MySQL服务器主机“SM_DB_host”0警告:mysqli::query:第64行/home/web/xxxxxx/pages/page.ctbanlist.php中无法获取mysqli致命错误:调用非对象上的成员函数fetch_assoc在第74行的/home/web/xxxxxx/pages/page.ctbanlist.php中-这是页面上的完全错误。我将所有内容都连接到数据库,但没有在页面上显示表。看起来SM_DB_主机只是一个占位符,应该用MySQL数据库服务器的实际名称替换它。如果本地主机与Web服务器是同一台机器,请使用本地主机。您可能还需要填写用户名、密码和数据库名称。