I had to go over this dozens of times before I found out a decent solution. When you use a prepared statement it's a bit of a mess trying to get an array of results from the result akin to $result->fetch_all(); So here's what I found:

[code]

$query = $mysqli->prepare("SELECT * FROM `table`");

$query->execute();

$result = $query->get_result();

$resultArray = $result->fetch_assoc();
[/code]

Use the get_result() method to get a result object from the statement object and then you can use the typical methods associated with the MySQLi result object.

See: http://uk.php.net/manual/en/mysqli-stmt.get-result.php