使用mySQL和PHP填充列表框

时间:2019-05-27 19:19:46

标签: php html mysql

我正在尝试使用MySQL查询的结果填充列表框。这是我尝试过的:

 <select>
 <?php
 $type = "processors";
 $stmt2 = mysqli_prepare($link, "SELECT id, name, price FROM products WHERE type=?");
 $stmt2->bind_param("s", $type);
 $stmt2->execute();
 echo "<select class name='productlist'>";
 $stmt2->bind_result($products_id, $products_name, $products_price);
 while($stmt2->fetch()){
 echo "<option value='".$row[$products_id]."'>".$row[$products_name]."</option>";
 }
 $stmt2->close();
 ?>
 </select>

我在此行有一个错误:

echo "<option value='".$row[$products_id]."'>".$row[$products_name]."</option>";

错误:

  

注意:未定义的变量:行

这应该将数据加载到列表框中;但是,没有数据被填充,因为我有上述错误。我怎样才能解决这个问题?谢谢。

1 个答案:

答案 0 :(得分:1)

您将查询结果绑定到标量变量,因此现在您所要做的就是使用它们。您的代码中没有$row

$stmt2->bind_result($products_id, $products_name, $products_price);
while($stmt2->fetch()){
    echo "<option value='$products_id'>$products_name</option>";
}
$stmt2->close();
?>