Предупреждение: mysqli_fetch_assoc () ожидает, что параметр 1 будет mysqli_result, логическое значение задано [duplicate]

На этот вопрос уже есть ответ:

mysql_fetch_array () / mysql_fetch_assoc () / mysql_fetch_row () / mysql_num_rows и т. д.… ожидает, что параметр 1 будет ресурсом или результатом 31 ответ

Я просмотрел все остальные вопросы, относящиеся к этому «предупреждению», но ни один из них не соответствует моей проблеме. Моя проблема, кажется, довольно проста, хотя я просто не могу понять это. Я пробовал каждое решение, которое я видел в Google, и здесь, но я недостаточно знаком с php / mysqli, чтобы решить его. Заранее спасибо

<?php
$db = new mysqli('localhost', 'root', '', 'game');

if($db->connect_errno > 0){
    die('Unable to connect [' . $db->connect_errno . ']');
}

$query = mysqli_query($db, "SELECT * FROM `characters`");

$query_result = array();

while ($row = mysqli_fetch_assoc($query)) {
    $query_result[$row['id']] = array(

        'name' => $row['name'],
        'name' => $row['race'],
        'name' => $row['level']
    );
}

?>

Ответы на вопрос(1)

Ваш ответ на вопрос