From 76c04c3aa614f7bd0c4d7554459d404eb0af69e9 Mon Sep 17 00:00:00 2001 From: vbochet <vbochet@gmail.com> Date: Fri, 29 Apr 2016 15:21:38 +0200 Subject: [PATCH] =?UTF-8?q?Modification=20du=20mod=C3=A8le=20et=20du=20con?= =?UTF-8?q?tr=C3=B4leur=20de=20connexion=20pour=20cr=C3=A9er=20deux=20vari?= =?UTF-8?q?ables=20de=20session=20lorsque=20la=20connexion=20a=20r=C3=A9us?= =?UTF-8?q?si?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/ConnexionController.php | 5 ++++- app/model/Connexion.php | 11 +++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/app/controller/ConnexionController.php b/app/controller/ConnexionController.php index 8de5846..7fc7a88 100644 --- a/app/controller/ConnexionController.php +++ b/app/controller/ConnexionController.php @@ -9,7 +9,7 @@ class ConnexionController extends Controller { // classe de contrôleur pour la $this->view->display(); } - public function verify() { // vérifie que les identifiants sont valides par rapport à la BDD + public function verify() { // vérifie que les identifiants sont valides par rapport à la BDD et réalise la connexion // 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 @@ -28,6 +28,9 @@ class ConnexionController extends Controller { // classe de contrôleur pour la } else { // l'utilisateur existe if(password_verify($userpassword, $bddpassword)) { // la connexion a réussi + session_start(); // on démarre la session pour pouvoir définir les variables adéquates + $_SESSION['connected'] = true; + $_SESSION['user'] = Connexion::getUser(self::slugify($pseudo)); header('Location:valid'); // on redirige vers la page OK } else { // sinon, c'est que le mot de passe est faux diff --git a/app/model/Connexion.php b/app/model/Connexion.php index b84adcf..6bb7a93 100644 --- a/app/model/Connexion.php +++ b/app/model/Connexion.php @@ -1,6 +1,7 @@ <?php class Connexion extends Model { // classe de modèle pour la connexion au site + public $slug, $pseudo, $nom, $prenom, $email; 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 @@ -19,6 +20,16 @@ class Connexion extends Model { // classe de modèle pour la connexion au site return $return; } + public static function getUser($slug) { // méthode permettant de récupérer les données d'un utilisateur dans la BDD + $db = Database::getInstance(); // on récupère la connexion à la BDD + $sql = "SELECT slug, pseudo, nom, prenom, email FROM R_joueur WHERE slug = :slug_joueur"; + $req = $db->prepare($sql); // on prépare la requête + $req->setFetchMode(PDO::FETCH_CLASS, "Connexion"); + $req->execute(array(":slug_joueur" => $slug)); // on remplace les variables dans la requête + + return $req->fetch(); + } + } -- GitLab