SQL SELECT *只返回一行

时间:2016-07-28 09:28:54

标签: php mysql select

我正在设计一个网站,我写了一些显示用户列表的网页。 我曾经做过

$query = SELECT * FROM `table_users` WHERE `id`='.$id.'

然后使用"增加ID,而"所以我可以抓住所有用户。但现在它太慢了,当ID之间存在差距时会出现故障。

所以我试过像

这样的东西
$query = SELECT `name` FROM `tbl_user`ORDER BY `id`

并显示带有

的用户列表
while ($i < sizeof(mysql_fetch_array(mysql_query($query)))){
<code to display an user>
$i++
}

但是mysql_fetch_array只返回一个用户,第一个用户(具有最小ID的用户)。我希望它返回数组中的所有用户。我该怎么办?

2 个答案:

答案 0 :(得分:0)

试试这样:

$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) {
     //$row is the row which was just gathered
}

请使用PDO或MySQLi代替弃用的mysql。

答案 1 :(得分:0)

试试这个

$query = "SELECT `name` FROM `tbl_user` ORDER BY `id`";
$user_query = mysql_query($query);

$i=1;
while ($row = mysql_fetch_array($user_query)){
  echo $i." : ".$row['name']."<br>";
  $i++;
}