En supposant que vous ne pouvez pas utiliser get_result()
et que vous voulez un ensemble d'appareils, vous pouvez faire :
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;
}
Cela crée un tableau temporaire et stocke les données de chaque ligne qu'il contient, puis les pousse vers le tableau principal. Autant que je sache, vous ne pouvez pas utiliser SELECT *
dans bind_result()
. Au lieu de cela, vous devrez ennuyeux taper tous les champs que vous voulez après SELECT