对于我的学校,我需要从MySQL Server
中选择项目,它只应该显示名称和价格。
$sql = "SELECT `item`,`price` FROM `items` ";
$query = mysqli_query(con(), $sql);
$row = mysqli_fetch_array($query);
foreach($row as $values)
{
echo "<p>".$values["item"]."</p>";
echo "<p>".$values["price"]."</p>";
}
我只得到了这样的东西:
L
L
L
L
4
4
4
4
它是表中唯一的第一项,但DB
中有许多行。
你做得很好,但你做错的是,你只选择了一个项目,并在单个值上迭代。
在这里,您只提取LLLL4444,并仅对此进行循环,因此,为了获得所有内容。
你需要这样做。
$sql = "SELECT `item`,`price` FROM `items` ";
$query = mysqli_query(con(), $sql);
while($row = mysqli_fetch_array($query))
{
echo "<p>".$row["item"]."</p>";
echo "<p>".$row["price"]."</p>";
}
试试这个:
$sql = "SELECT `item`,`price` FROM `items` ";
$query = mysqli_query(con(), $sql);
while ($row = mysqli_fetch_assoc($query)) {
echo "<p>".$row["item"]."</p>";
echo "<p>".$row["price"]."</p>";
}
mysql_fetch_array()
本质上返回两个数组,一个带有数字索引,另一个带有关联字符串索引。
因此,在不指定MYSQL_ASSOC
或MYSQL_NUM
的情况下使用mysql_fetch_array()
,或通过指定MYSQL_BOTH,将返回两个数组