我正在尝试使用准备好的语句来保护我的登录页面。 密码是哈希的,我试过也把它放在准备好的语句中,但它不起作用。
我不确定以下代码是否足够安全。
<?php require 'Connections/localhost.php'; ?>
<?php
if(isset($_POST['LogIn'])) {
session_start();
$EM = $_POST['E-mail'];
$PW = $_POST['Wacht-Woord'];
$sql = "select Password, UserID, UserLevel from user where Email=?";
$stmt = $con->prepare($sql);
$stmt->bind_param("s", $EM);
$stmt->execute();
$stmt->bind_result($Password, $UID, $UL);
while ($stmt->fetch())
{
if(password_verify($PW, $Password))
{
session_start();
$_SESSION["UserID"] = $UID;
if($UL=="1")
{
header('Location: Account.php');
}
else if ($UL=="2")
{
header('Location: CRUD/indexAdmin.php');
}
}
else
{
$_SESSION["LogInFail"] = "Yes";
}
}
}
?>