diff --git a/manager/database.php b/manager/database.php index c719b7b..01458af 100755 --- a/manager/database.php +++ b/manager/database.php @@ -92,17 +92,17 @@ class DataBase{ /******************************************************/ /*** ajout d'un utilisateur à un groupe dans la bdd ***/ /******************************************************/ - public function ajouterUtilisateurGroupe($utilisateur, $groupe){ + public function ajouterEtudiantGroupe($etudiant, $groupe){ // on cherche un utilisateur avec ce pseudo - $getUtilisateurUID = $this->pdo->prepare("SELECT `id_utilisateur` FROM `utilisateurs` WHERE `pseudo` = :username"); - $getUtilisateurUID->execute(array( - ':username' => $utilisateur + $getEtudiantUID = $this->pdo->prepare("SELECT `id_utilisateur` FROM `utilisateurs` WHERE `pseudo` = :username"); + $getEtudiantUID->execute(array( + ':username' => $etudiant )); // si on trouve, on le définit, sinon on retourne "unknown_user" - if( $utilisateurUID = $getUtilisateurUID->fetch()['id_utilisateur'] ) - $utilisateurUID = (int) $utilisateurUID; + if( $etudiantUID = $getEtudiantUID->fetch()['id_utilisateur'] ) + $etudiantUID = (int) $etudiantUID; else return 'unknown_user'; @@ -127,7 +127,7 @@ class DataBase{ // si on a l'UID utilisateur & l'UID groupe => on créé l'association $asso = $this->pdo->prepare("INSERT INTO `association_utilisateur_groupe`(`id_utilisateur`, `id_groupe`) VALUES( (SELECT `id_utilisateur` FROM `utilisateurs` WHERE `id_utilisateur` = :utilisateur), (SELECT `id_groupe` FROM `groupes` WHERE `id_groupe` = :groupe) )"); $asso->execute(array( - ':utilisateur' => $utilisateurUID, + ':utilisateur' => $etudiantUID, ':groupe' => $groupeUID )); @@ -141,7 +141,7 @@ class DataBase{ /******************************************************/ /*** retourne la liste des utilisateurs d'un groupe ***/ /******************************************************/ - public function listeUtilisateurGroupe($groupe){ + public function listeEtudiantsGroupe($groupe){ // on cherche un groupe avec ce nom $getGroupeUID = $this->pdo->prepare("SELECT `id_groupe` FROM `groupes` WHERE `nom` = :nom"); @@ -208,10 +208,27 @@ class DataBase{ /***** déplace un étudiant d'un groupe à un autre *****/ /******************************************************/ - public function deplacerEleve($nomEleve,$nouveauGroupe) { + public function deplacerEtudiant($nomEtudiant,$nouveauGroupe) { // !!! Réfléchir à la gestion des AS, LP etc.. + // pas bon car la on ne sait même pas quels groupes seront définis dans la base de donnée + // il faut donc pas vérifier les groupes en dur (c'est salasse) + // ensuite on ne retourne jamais un texte, mais un code d'erreur 'success' ou 'error' fin sinon y'a trop de cas + // particuliers à gérer au niveau de la réponse + // + // exemple: + // [1] si l'utilisateur n'existe pas "unknown_user" + // [2] si le groupe n'existe pas "unknown_group" + // [3] si l'utilisateur n'est déjà dans un groupe (donc l'association n'existe pas) ça veut dire qu'on doit faire un + // INSERT INTO au lieu d'un UPDATE, donc il faut aussi retourner une erreur ou bien faire une condition pour gérer ce cas (comme tu veux) + // + // ducoup si je résume: + // [1] dans manager/groups.php ajoute un @case au @switch du genre "move" + // [2] toujours dans manager/groups.php vérifie l'intégrité des variables comme c'est déjà fait + // [3] ensuite tu peux écrire manager/database.php en vérifiant tout les cas (ceux que j'ai cité ou oublié) + // + // Inspire toi de ce qui a déjà été fait au dessus et essaie de if(isset($nouveauGroupe) && is_string($nouveauGroupe) && $nouveauGroupe == 'A' || 'B' || 'C' || 'D' || 'E' || 'F') { return 'L\'étudiant a été déplacé'; diff --git a/manager/groups.php b/manager/groups.php index 9193c0d..1f7c121 100755 --- a/manager/groups.php +++ b/manager/groups.php @@ -61,7 +61,7 @@ if( $groupeCheck ){ // si tout les paramètres sont bons require_once __ROOT__.'/manager/database.php'; - $answer->request = DataBase::getInstance()->ajouterUtilisateurGroupe($request->utilisateur, $request->groupe); + $answer->request = DataBase::getInstance()->ajouterEtudiantGroupe($request->utilisateur, $request->groupe); }else $answer->request = 'param_error'; break; @@ -77,7 +77,7 @@ if( $groupeCheck ){ // si tout les paramètres sont bons require_once __ROOT__.'/manager/database.php'; - $userlist = DataBase::getInstance()->listeUtilisateurGroupe($request->groupe); + $userlist = DataBase::getInstance()->listeEtudiantsGroupe($request->groupe); if( is_array($userlist) ){ // si on a récupéré la liste des utilisateurs $answer->userlist = $userlist;