请修复我的错误,我的代码输出中未显示所有用户详细信息,但仅显示了一个

时间:2018-09-03 06:37:30

标签: php mysql mysqli

我的代码

<?php
    $db = mysqli_connect('localhost', 'root', '', 'registration');
    $query = "select * from users order by ID";
    $result=mysqli_query($db,$query);
    // Associative array
    $row=mysqli_fetch_array($result,MYSQLI_ASSOC);
    printf ("%s (%s)\n",$row["email"],$row["password"]);
    mysqli_close($db);
     ?>

我的错误是,它始终只打印一个用户详细信息,而实际上不打印其他用户,实际上phpmyadmin中只有三个用户,但是使用此代码,它仅显示一个用户电子邮件和密码。我想显示所有

2 个答案:

答案 0 :(得分:2)

在此处更改您的代码。您错过了while(),这就是为什么您获得单一结果的原因。您可以了解有关循环here

的更多信息
while($row=mysqli_fetch_assoc($result))
 {
   echo $row["email"] . $row["password"]);
 }

要使代码更高效和安全,应使用PDOprepared staments

答案 1 :(得分:0)

使用此代码:

<?php

$db = mysqli_connect('localhost', 'root', '', 'registration');
$query = "select * from users order by ID";
$result = mysqli_query($db, $query);

while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
echo "<pre>";
printf ("Email: %s  password: %s", $row["email"], $row["password"]);
}

mysqli_close($db);
?>