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