Použijte tento kód:
$rows = array();
if ($type == 'assoc') {
while($row = $result->fetch_assoc()) {
$rows[] = $row;
}
} else {
while($row = $result->fetch_object()) {
$rows[] = $row;
}
}
return $rows;
Používáte return uvnitř while a return ukončuje cyklus while po první iteraci, proto dostáváte pouze jeden řádek.