From 0667051ab8131d1a21ed4cb24cd894b8720e786b Mon Sep 17 00:00:00 2001 From: vbochet <vbochet@gmail.com> Date: Tue, 12 Apr 2016 10:52:44 +0200 Subject: [PATCH] Clarification des variables dans les diverses pages (pour Table). --- app/controller/JeuController.php | 2 +- app/controller/ProfilController.php | 1 + app/controller/RegisterController.php | 4 ++-- app/model/Jeu.php | 4 ++-- app/model/Profil.php | 4 ++-- app/model/Register.php | 8 ++++---- 6 files changed, 12 insertions(+), 11 deletions(-) diff --git a/app/controller/JeuController.php b/app/controller/JeuController.php index 52d8547..40f18a3 100644 --- a/app/controller/JeuController.php +++ b/app/controller/JeuController.php @@ -2,7 +2,7 @@ class JeuController extends Controller { public function display() { - $slug = $this->route["params"]["slug"]; + $slug = $this->route["params"]["slug"]; //cf. le commentaire dans ProfilController.php $this->view->jeu = Jeu::getFromSlug($slug); $this->view->display(); } diff --git a/app/controller/ProfilController.php b/app/controller/ProfilController.php index 96d3953..37d6784 100644 --- a/app/controller/ProfilController.php +++ b/app/controller/ProfilController.php @@ -3,6 +3,7 @@ class ProfilController extends Controller { // classe de contrôleur pour l'affichage des profils public function display() { $slug = $this->route["params"]["slug"]; // on récupère le "slug", en gros tout le reste de l'URL qui n'a pas encore servi + // je précise que dans ce cas précis, le $slug ne contient que le pseudo du joueur sosu forme normalisée. Donc je pourrais renommer la variable $slug_joueur... $this->view->profil = Profil::getFromSlug($slug); // on utilise le modèle pour aller chercher en BDD le profil qui nous intéresse $this->view->display(); // on affiche ce profil } diff --git a/app/controller/RegisterController.php b/app/controller/RegisterController.php index 6174a63..3612a6d 100644 --- a/app/controller/RegisterController.php +++ b/app/controller/RegisterController.php @@ -18,9 +18,9 @@ class RegisterController extends Controller { // classe de contrôleur pour l'in } $data = $_POST; - $data['slug'] = self::slugify($_POST['pseudo']); + $data['slug_joueur'] = self::slugify($_POST['pseudo']); - $result = Register::check($data['slug'], $_POST['email']); // vérifie si le pseudo est libre et que l'adresse email n'est pas déjà utilisée + $result = Register::check($data['slug_joueur'], $_POST['email']); // vérifie si le pseudo est libre et que l'adresse email n'est pas déjà utilisée if($result == 1) { // connexion valide Register::writedb($data);// on réalise l'inscription à l'aide d'une méthode de la classe Register header('Location:valid'); // on redirige vers la page OK diff --git a/app/model/Jeu.php b/app/model/Jeu.php index 614dd37..e637fd6 100644 --- a/app/model/Jeu.php +++ b/app/model/Jeu.php @@ -3,12 +3,12 @@ class Jeu extends Model { public $id, $nom, $description, $slug; - public static function getFromSlug($slug) { + public static function getFromSlug($slug_jeu) { $db = Database::getInstance(); $sql = "SELECT * FROM jeux WHERE slug = :slug"; $stmt = $db->prepare($sql); $stmt->setFetchMode(PDO::FETCH_CLASS, "Jeu"); // 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) - $stmt->execute(array(":slug" => $slug)); + $stmt->execute(array(":slug" => $slug_jeu)); return $stmt->fetch(); } diff --git a/app/model/Profil.php b/app/model/Profil.php index b63a87d..5c61bf0 100644 --- a/app/model/Profil.php +++ b/app/model/Profil.php @@ -3,12 +3,12 @@ class Profil extends Model { // classe de modèle pour l'affichage de profils public $slug, $pseudo, $password, $nom, $prenom, $email, $description; // on définit les attributs de la classe - public static function getFromSlug($slug) { // méthode permettant de récupérer les informations relatives à un profil donné de la BDD + public static function getFromSlug($slug_profil) { // méthode permettant de récupérer les informations relatives à un profil donné de la BDD $db = Database::getInstance(); // on récupère la connexion à la BDD $sql = "SELECT * FROM R_joueur WHERE slug = :slug"; // on définit la requête qu'on enverra $req = $db->prepare($sql); // on prépare la requête (c'est là que la mémthode __call() est utile dans la classe Database d'ailleurs) $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(":slug" => $slug)); // on remplace le "::slug" par sa valeur dans la requête + $req->execute(array(":slug" => $slug_profil)); // on remplace le "::slug" par sa valeur dans la requête return $req->fetch(); // on retourne le premier (et normalement unique) résultat en BDD } diff --git a/app/model/Register.php b/app/model/Register.php index eb604db..63f68d8 100644 --- a/app/model/Register.php +++ b/app/model/Register.php @@ -1,7 +1,7 @@ <?php class Register extends Model { // classe de modèle pour l'inscription - public static function check($slug, $email) { // méthode permettant de vérifier si un compte-joueur est libre + public static function check($slug_joueur, $email) { // méthode permettant de vérifier si un compte-joueur est libre // OK si personne avec même pseudo ou même adresse mail n'existe dans la BDD // renvoie 1 si le compte est libre (= n'existe pas) // renvoie 2 si pseudo déjà pris @@ -10,11 +10,11 @@ class Register extends Model { // classe de modèle pour l'inscription $db = Database::getInstance(); // on récupère la connexion à la BDD $sql = "SELECT * FROM R_joueur WHERE slug = :slug OR email = :email"; $req = $db->prepare($sql); // on prépare la requête - $req->execute(array(":slug" => $slug, ":email" => $email)); // on remplace les variables dans la requête + $req->execute(array(":slug" => $slug_joueur, ":email" => $email)); // on remplace les variables dans la requête $return = 1; //valeur par défaut si on n'a pas d'autre if($result = $req->fetch()) { // on récupère l'enregistrement, s'il existe - if($result["slug"] == $slug) { + if($result["slug_joueur"] == $slug_joueur) { $return = 2; } // si on a trouvé quelqu'un avec le pseudo, on ne peut pas faire l'inscription else if($result["email"] == $email) { @@ -30,7 +30,7 @@ class Register extends Model { // classe de modèle pour l'inscription $sql = "INSERT INTO R_joueur (slug, pseudo, password, nom, prenom, email, description) VALUES (:slug, :pseudo, :password, :nom, :prenom, :email, :description)"; $req = $db->prepare($sql); // on prépare la requête - $result = $req->execute(array(":slug" => $data['slug'], + $result = $req->execute(array(":slug" => $data['slug_joueur'], ":pseudo" => $data['pseudo'], ":password" => $data['password'], ":nom" => $data['nom'], -- GitLab