我可能错过了一些简单的东西,但我似乎在这里被阻止了…我有一个带有两个表的MySQL数据库,每个表有几行.所以目标是查询数据库并在表中显示结果,所以我这样开始:
$query =“SELECT name,email,phone FROM users”;
然后我有这个PHP代码:
$result = mysql_query($query);
然后,我使用它来获取数组:
$row = mysql_fetch_array($result);
此时,我想我可以简单地遍历$row数组并在表中显示结果.我已经有了一个函数来循环和显示表,但不幸的是,在它进入函数之前,数组似乎是不完整的.
要解决这个问题,我使用这个:
for ($i = 0; $i < count($row); $i++) {
echo $row[$i] . " ";
}
此时,我只获取数据库中的第一行,还有其他3个未显示.非常感谢任何帮助.
解决方法:
您需要使用以下内容,因为如果在循环外部调用mysql_fetch_array,则只返回第一行中所有元素的数组.通过在每次循环通过时将行设置为mysql_fetch_array返回的新行,您将遍历每一行而不是实际在行内的行.
while($row = mysql_fetch_array($result))
{
// This will loop through each row, now use your loop here
}
但好方法是迭代每一行,因为你只有三列
while($row = mysql_fetch_assoc($result))
{
echo $row['name']." ";
echo $row['email']." ";
}
标签:php,mysql,for-loop
来源: https://codeday.me/bug/20190929/1830868.html