Armazenar e iterar sobre o resultado da consulta no mysqli
Esta é a minha consulta simples em php, usando o estilo orientado a objetos mysqli:
$query = "SELECT name FROM usertable WHERE id = ?";
$stmt = $mysqli->prepare($query);
$stmt->bind_param('i', $id);
$id= $_GET['id'];
$stmt->execute();
$stmt->bind_result($name);
while($stmt->fetch()){
echo $name." ";
}
$stmt->free_result();
$stmt->close();
Isso funciona bem. Eu obtenho a lista de nomes recuperados da instrução select.
Agora, dentro do tempo eu quero usar o$name
variável como parâmetro para outra consulta, mas o mysqli não permite isso, já que tenho que fechar a primeira consulta e depois chamar a segunda consulta.
Então eu acho que tenho que armazenar o resultado da primeira consulta e depois iterar sobre o resultado chamando uma nova consulta.
Eu tentei o seguinte:
$query = "SELECT name FROM usertable WHERE id = ?";
$stmt = $mysqli->prepare($query);
$stmt->bind_param('i', $id);
$id= $_GET['id'];
$stmt->execute();
//$stmt->bind_result($name);
$result = $stmt->store_result();
$stmt->free_result();
$stmt->close();
while ($row = $result->fetch_row())
{
echo $row[0]." ";
}
Mas isso não funciona. O código dentro enquanto nunca é alcançado.
N.B.: Eu quero evitar o uso demulti_query()
.