diff --git a/app/controller/ConnexionController.php b/app/controller/ConnexionController.php
index cbeda4e907410979fd4c930a2ffd4bed56c0749c..8de58464d8ccf7a3d9ccfe09f4cd1cde9855be22 100644
--- a/app/controller/ConnexionController.php
+++ b/app/controller/ConnexionController.php
@@ -10,7 +10,7 @@ class ConnexionController extends Controller { // classe de contrôleur pour la
 	}
 	
 	public function verify() { // vérifie que les identifiants sont valides par rapport à la BDD
-		// méthode basique avec un stockage de mdp en clair, ce qu'on ne fera bien sûr pas !
+		// méthode avec un stockage de mdp hashé selon la fonction password_hash()
 		if(!isset($_POST['login']) || !isset($_POST['password'])) { // si l'une des données manque, erreur
 			//appeler une fonction d'erreur
 			echo "<h1>Erreur : variables absentes</h1>";
@@ -18,17 +18,25 @@ class ConnexionController extends Controller { // classe de contrôleur pour la
 		}
 		
 		$pseudo = $_POST['login'];
-		$password = $_POST['password'];
+		$userpassword = $_POST['password']; //le mot de passe utilisateur
+		$bddpassword = Connexion::getPassword($pseudo); // le hash du mot de passe stocké en BDD
 		
-		$result = Connexion::check($pseudo, $password); // vérifie si existe en base et a bon mdp
-		if($result == 1) { // connexion valide
-			header('Location:valid'); // on redirige vers la  page OK
-		}
-		else {
+		if($bddpassword == null) { // l'utilisateur n'existe pas => code d'erreur 0
 			session_start(); // on démarre une session pour avoir accès aux variables superglobales de session
-			$_SESSION["connexionErrCode"] = $result; // on stocke le code d'erreur 
+			$_SESSION["connexionErrCode"] = 0; // on stocke le code d'erreur 
 			header('Location:../connexion'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne, ne me demandez pas pourquoi !)
 		}
+		else { // l'utilisateur existe
+			if(password_verify($userpassword, $bddpassword)) { // la connexion a réussi
+				header('Location:valid'); // on redirige vers la  page OK
+			}
+			else { // sinon, c'est que le mot de passe est faux
+				session_start(); // on démarre une session pour avoir accès aux variables superglobales de session
+				$_SESSION["connexionErrCode"] = 2; // on stocke le code d'erreur 
+				header('Location:../connexion'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne, ne me demandez pas pourquoi !)
+			}
+		}
+		
 	}
 	
 }
diff --git a/app/model/Connexion.php b/app/model/Connexion.php
index cb6b1292a57d3cb066cfc180829cd3b6ad4ab7ba..b84adcfad2acd7678ee470044ae167175a4760f2 100644
--- a/app/model/Connexion.php
+++ b/app/model/Connexion.php
@@ -2,25 +2,18 @@
 
 class Connexion extends Model { // classe de modèle pour la connexion au site
 	
-	public static function check($pseudo, $pass) { // méthode permettant de vérifier la validité d'identifiants d'un membre dans la BDD
-		// renvoie 1 si le membre existe et que son mot de passe correspond
-		// renvoie 2 si le mot de passe est faux
-		// renvoie 0 si le membre n'existe pas
+	public static function getPassword($pseudo) { // méthode permettant de récupérer le password hashé d'un membre dans la BDD
+		// renvoie le mot de passe si le membre existe
+		// renvoie null si le membre n'existe pas
 		
 		$db = Database::getInstance(); // on récupère la connexion à la BDD
-		$sql = "SELECT password FROM profils WHERE pseudo = :pseudo";
+		$sql = "SELECT password FROM R_joueur WHERE pseudo = :pseudo";
 		$req = $db->prepare($sql); // on prépare la requête
-		//$req->setFetchMode(PDO::FETCH_CLASS, "Profil");  // règle le type dans lequel on doit mettre les données (PDO va chercher les attributs de la classe de même nom que ses colonnes de BDD et mettre dedans les valeurs correspondantes)
 		$req->execute(array(":pseudo" => $pseudo)); // on remplace les variables dans la requête
 		
-		$return = 0; //valeur par défaut
+		$return = null; //valeur par défaut du retour
 		if($result = $req->fetch()) { // on récupère l'enregistrement, s'il existe
-			if($result['password'] == $pass) { // si les mdp correspondent, alors c'est bon
-				$return = 1;
-			}
-			else { // sinon, il y a ppb dans les mdp
-				$return = 2;
-			}
+			$return = $result['password']; // on récupère le mdp hashé pour le retourner
 		}
 		
 		return $return;