如何获得所有产品?回归后,我只得到一排...... 我想键入一个循环来获取MySQL表的所有值" listaprodotti"?
Observables
这就是我得到的东西
public function getProdottiByUsername($username)
{
$stmt = $this->conn->prepare("SELECT username, id_prodotto, nome_prodotto, categoria, quantita FROM listaprodotti WHERE username = ?");
$stmt->bind_param("s", $username);
$stmt->execute();
$stmt->bind_result($username, $id_prodotto, $nome_prodotto, $categoria, $quantita);
$stmt->fetch();
$prodotti = array();
$prodotti['username'] = $username;
$prodotti['id_prodotto'] = $id_prodotto;
$prodotti['nome_prodotto'] = $nome_prodotto;
$prodotti['categoria'] = $categoria;
$prodotti['quantita'] = $quantita;
return $prodotti;
}
}
所有这一切都必须使用Swift 3作为 "prodotti":
{"username":"anto","id_prodotto":57,"nome_prodotto":"xxx",
"categoria":"xxx","quantita":"2"}}
进行调用。
更新
如何在Swift 3中将值设为NSDictionary
?
PHP代码
NSDictionary
SWIFT CODE
public function getProdottiByUsername($username)
{
$stmt = $this->conn->prepare("SELECT username, id_prodotto, nome_prodotto, categoria, quantita FROM listaprodotti WHERE username = ?");
$stmt->bind_param("s", $username);
$stmt->execute();
$result = $stmt->get_result();
$i=0;
$prodotti = array();
while($row = $result->fetch_array(MYSQLI_ASSOC)){
$prodotti[$i]['username'] = $row['username'];
$prodotti[$i]['id_prodotto'] = $row['id_prodotto'];
$prodotti[$i]['nome_prodotto'] = $row['nome_prodotto'];
$prodotti[$i]['categoria'] = $row['categoria'];
$prodotti[$i]['quantita'] = $row['quantita'];
$i++;
}
return $prodotti;
}
}
答案 0 :(得分:4)
答案 1 :(得分:0)
您可以循环调用结果,否则只需要第一行:
$result = $stmt->get_result();
$i=0;
while($row = $result->fetch_array(MYSQLI_ASSOC)){
$prodotti[$i]['username'] = $row['username'];
$prodotti[$i]['id_prodotto'] = $row['id_prodotto'];
$prodotti[$i]['nome_prodotto'] = $row['nome_prodotto'];
$prodotti[$i]['categoria'] = $row['categoria'];
$prodotti[$i]['quantita'] = $row['quantita'];
$i++;
}