Beklager, jeg har sagt litt feil rundt password_hash og password_verify ser jeg. Du må sammenligne passord i klartekst med hash lagd av password_hash for å finne ut om passordene matcher.
Så da ville jeg gjort det sånn her:
Kode
$sql = "SELECT username, password FROM login WHERE username=?";
if ($stmt = $conn->prepare($sql)) {
$username = $_POST['username'];
$password = $_POST['password'];
$stmt->bind_param("s", $username);
$stmt->execute();
$result = $stmt->get_result();
if ($result->num_rows > 0) {
$row = $result->fetch_array(MYSQLI_NUM);
$db_hash = $row[0]['password'];
if (password_verify($password, $db_hash)) {
// Username og passord matchet, så denne brukeren kan logge inn.
}
else {
// Passordet er geil.
}
}
else {
// Ingen resultater, ukjent brukernavn.
}
$stmt->close();
$conn->close();
}
Med forbehold om at MySQLi-koden ikke stemmer 100%.