View Single Post
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%.