Não é possível obter o número de linhas e buscar ao usar a instrução preparada do MySQLi

Quero obter o número de linhas do banco de dados, mas quando tento fazer isso, o$g_check variável será igual a0 e meu código ecoará o$sugg_title mensagem que está noelse declaração. Mas no banco de dados existem 4 grupos inseridos, então onum_rows A propriedade deve retornar 4.

$sql = "SELECT DISTINCT gp.logo, gp.name
        FROM gmembers AS gm
        LEFT JOIN groups AS gp ON gp.name = gm.gname
        WHERE gp.creator != ? AND gm.mname != ? LIMIT 10";
$stmt = $conn->prepare($sql);
$stmt->bind_param('ss',$log_username,$log_username);
$stmt->execute();
$g_check = $stmt->num_rows;
if ($g_check > 0){
  $result = $stmt->get_result();
  while ($row = $result->fetch_assoc()) {
    $agList .= '<a href="group.php?g='.$row["name"].'"><img class="group_margin" src="groups/'.$row["name"].'/'.$row["logo"].'" alt="'.$row["name"].'" title="'.$row["name"].'" width="70" height="70" /></a>';
  }
}else{
  $sugg_title = "You have no group suggestions at the moment. Click ";
  $sugg_title .= '<a href="all_groups.php">here</a> to view all groups.';
}

eu ponho ostrore_result() e afetch() funções apósexecute() mas depois recebo esta mensagem de erro: "Erro fatal: Erro não capturado: Chamada para uma função de membro fetch_assoc () em booleano"

questionAnswers(1)

yourAnswerToTheQuestion