prepare('SELECT password_hash FROM users WHERE id = :id LIMIT 1'); $stmt->execute(['id' => (int) $user['id']]); $fresh = $stmt->fetch(); if (!$fresh || !password_verify($current, (string) $fresh['password_hash'])) { $errors[] = 'Le mot de passe actuel est incorrect.'; } if (!password_rules_ok($password)) { $errors[] = 'Le nouveau mot de passe doit contenir au moins 8 caractères.'; } if ($password !== $confirm) { $errors[] = 'La confirmation ne correspond pas.'; } if (!$errors) { $update = db()->prepare('UPDATE users SET password_hash = :password_hash WHERE id = :id'); $update->execute([ 'password_hash' => password_hash($password, PASSWORD_BCRYPT), 'id' => (int) $user['id'], ]); set_flash('success', 'Mot de passe modifié avec succès.'); redirect('index.php'); } } render_header('Modifier mot de passe', ['description' => 'Modifier le mot de passe du compte utilisateur RJLRESAKA.']); ?>

Sécurité

Modifier le mot de passe