Dengan asumsi Anda tidak dapat menggunakan get_result()
dan Anda menginginkan serangkaian perangkat, Anda dapat melakukan:
public function getAllDevices($user_id) {
$stmt = $this->conn->prepare("SELECT device_id, device_name, device_info FROM devices WHERE primary_owner_id = ?");
$stmt->bind_param("i", $user_id);
$stmt->execute();
$stmt->bind_result($id, $name, $info);
$devices = array();
while($stmt->fetch()) {
$tmp = array();
$tmp["id"] = $id;
$tmp["name"] = $name;
$tmp["info"] = $info;
array_push($devices, $tmp);
}
$stmt->close();
return $devices;
}
Ini membuat larik sementara dan menyimpan data dari setiap baris di dalamnya, lalu mendorongnya ke larik utama. Sejauh yang saya ketahui, Anda tidak dapat menggunakan SELECT *
di bind_result()
. Sebagai gantinya, Anda harus mengetik semua bidang yang Anda inginkan setelah SELECT