我对PHP还是很陌生,我正在尝试使用MySQL创建一个登录系统。我有一个用户注册的表单,它保存在称为寄存器的数据库表中。我已经有“登录验证”和所有这些内容。仅注册一个用户时,它可以正常运行。但是,当另一个用户注册时,SELECT事物仅选择第一个ro(第一个用户的pw),因此第二个用户无法登录,因为SELECT并不包括表的所有行。这是我的代码:
包括“ cn.php”;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$user = htmlspecialchars($_REQUEST["user"]);
$u_password = htmlspecialchars($_REQUEST["password"]);
$qry = "SELECT user,password FROM registers";
$result = mysqli_query($conexion,$qry);
$row = mysqli_fetch_array($result);
$db_user = $row["user"];
$db_password = password_verify($u_password,$row["password"]);
if($u_password == $db_password) {
echo "<script>alert('You are in')</script>";
} else {
echo "<script>alert('Error')</script>";
}
}
我的问题是:由于select仅检测第一行,因此我该如何选择寄存器中的所有行,在这种情况下,第一个用户已注册?