diff --git a/php/src/controleur/FrontControleur.php b/php/src/controleur/FrontControleur.php index 791f1f5..58b83e8 100755 --- a/php/src/controleur/FrontControleur.php +++ b/php/src/controleur/FrontControleur.php @@ -16,10 +16,10 @@ class FrontControleur //TODO ], "Membre" => [ - "deconnection","proposerOffre","consulterProfil","modifierProfil","signaler", + "deconnexion","proposerOffre","consulterProfil","modifierProfil","signaler", ], "Utilisateur" => [ - "connection", "inscription", "accueil","consulterProfilLimite" + "connexion", "inscription", "accueil","consulterProfilLimite" ] ); @@ -45,7 +45,6 @@ class FrontControleur $dVueErreur[] = 'Veuillez vous connecter'; echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]); } else{ - echo "controlleur membre instancié"; new MembreControleur(); } }else{ diff --git a/php/src/controleur/MembreControleur.php b/php/src/controleur/MembreControleur.php index f73641d..151c410 100755 --- a/php/src/controleur/MembreControleur.php +++ b/php/src/controleur/MembreControleur.php @@ -12,8 +12,8 @@ class MembreControleur extends UtilisateurControleur $action = \App\config\Validation::nettoyerString($_REQUEST["action"]); } switch ($action) { - case "deconnection": - $this->deconnection(); + case "deconnexion": + $this->deconnexion(); break; case "proposerOffre": $this->proposerOffre(); @@ -32,7 +32,7 @@ class MembreControleur extends UtilisateurControleur } } - protected function deconnection() + protected function deconnexion() { session_destroy(); header('Location: index.php?action=accueil'); diff --git a/php/src/controleur/UtilisateurControleur.php b/php/src/controleur/UtilisateurControleur.php index 5ca0ff1..fceb133 100755 --- a/php/src/controleur/UtilisateurControleur.php +++ b/php/src/controleur/UtilisateurControleur.php @@ -41,11 +41,11 @@ class UtilisateurControleur { global $twig; $dVueErreur = []; // Tableau pour stocker les erreurs, le cas échéant + $userModel = new \App\modele\UtilisateurModele(); if (isset($_POST['email'], $_POST['password'])) { $email = \App\config\Validation::nettoyerString($_POST['email']); $motDePasse = \App\config\Validation::nettoyerString($_POST['password']); - $userModel = new \App\modele\UtilisateurModele(); $utilisateur = $userModel->connection($email, $motDePasse); if ($utilisateur instanceof \App\metier\Alumni) { $_SESSION['utilisateur'] = $utilisateur; @@ -69,6 +69,7 @@ class UtilisateurControleur $prenom = \App\config\Validation::nettoyerString($_POST['firstname']); $email = \App\config\Validation::nettoyerString($_POST['email']); $motDePasse = \App\config\Validation::nettoyerString($_POST['password']); + $hash = password_hash($motDePasse, PASSWORD_DEFAULT); // verification que l'email est valide et unique : if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { @@ -79,7 +80,7 @@ class UtilisateurControleur $dVueErreur[] = "L'adresse email est déjà utilisée."; } } - $nouvelUtilisateur = $userModel->inscription($prenom,$nom,$email, $motDePasse); + $nouvelUtilisateur = $userModel->inscription($prenom,$nom,$email, $hash); if ($nouvelUtilisateur instanceof \App\metier\Alumni) { header('Location: index.php?action=inscription_success'); @@ -98,9 +99,10 @@ class UtilisateurControleur if (isset($_SESSION['utilisateur']) && $_SESSION['utilisateur'] instanceof \App\metier\Alumni) { $prenom = $_SESSION['utilisateur']->getPrenom(); $nom = $_SESSION['utilisateur']->getNom(); - } else { - $prenom = "Utilisateur"; - $nom = "inconnu"; + } + else{ + $prenom = null; + $nom = null; } //aller sur la page d'accueil avec le nom et prenom de l'utilisateur echo $twig->render('accueil.html', ['prenom' => $prenom, 'nom' => $nom]); diff --git a/php/src/modele/UtilisateurModele.php b/php/src/modele/UtilisateurModele.php index 9d2fd1d..e4d9a06 100755 --- a/php/src/modele/UtilisateurModele.php +++ b/php/src/modele/UtilisateurModele.php @@ -18,7 +18,7 @@ class UtilisateurModele * @param string hash * @return \App\metier\Alumni */ - public function connection(string $email, string $hash) : ? \App\metier\Alumni + public function connection(string $email, string $mdp) : ? \App\metier\Alumni { $dsn = "mysql:host=localhost;dbname=dbAlica"; $username = "Dev"; @@ -30,7 +30,7 @@ class UtilisateurModele $utilisateur = $gate->findByEmail($email); if ($utilisateur instanceof \App\metier\Alumni) { // L'utilisateur existe, vérifiez le mot de passe - if ($hash==$utilisateur->getPassword()) { + if (password_verify($mdp, $utilisateur->getPassword())) { // Le mot de passe est correct, retournez l'utilisateur session_start(); return $utilisateur; diff --git a/php/templates/menu.html b/php/templates/menu.html index 603ceea..9788900 100644 --- a/php/templates/menu.html +++ b/php/templates/menu.html @@ -23,9 +23,9 @@