O mysqli_stmt::execute retorna apenas bool por definição. Então, chamando
$result->any_method_name()
falhará porque $result
é um valor booleano. Para obter os valores de uma instrução preparada usando a biblioteca MySQLi, você vincula suas variáveis de destino com
$stmt->bind_result(...)
e então use $stmt->fetch()
em um loop while para obter o resultado de sua consulta em suas variáveis vinculadas. E depois disso você muda do MySQLi para PDO
porque tem uma API melhor em relação a isso…