Praticamente ho criptato in questo modo la password:
Codice PHP:
$password = password_hash($password, PASSWORD_BCRYPT);
Per poi salvarla nel database.
Ora quando faccio il login vorrei confrontare la password con quella criptata nel databse, per farlo ho usato questo metodo:
Codice PHP:
if(!isset( $_POST['username'], $_POST['password'])){
$message = 'Please enter a valid username and password';
}
$db = new PDO("mysql:host=$mysql_hostname;dbname=$mysql_dbname", $mysql_username, $mysql_password);
// preparazione della query
$sql = $db->prepare('SELECT users.username as username, users.password as password from users');
// esecuzione della query
$sql->execute();
// creazione di un array dei risultati
$res = $sql->fetchAll();
// salvataggio risultati
$user=$res[0]['username'];
$pass=$res[0]['password'];
if($matched = password_verify( $_POST['password'] , $pass) && $user== $_POST['username'])
Solo che non funziona, where is the problem?