correction gestion arguments deplacerEtudiant()
This commit is contained in:
parent
786ec088d6
commit
92dc3aa4d3
|
@ -241,7 +241,7 @@ class DataBase{
|
|||
/***** déplace un étudiant d'un groupe à un autre *****/
|
||||
/******************************************************/
|
||||
|
||||
public function deplacerEtudiant($nomEtudiant,$nouveauGroupe) {
|
||||
public function deplacerEtudiant($etudiant,$groupe) {
|
||||
|
||||
// !!! Réfléchir à la gestion des AS, LP etc..
|
||||
|
||||
|
@ -262,10 +262,44 @@ class DataBase{
|
|||
// [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é';
|
||||
else
|
||||
return 'L\'étudiant n\'a pas pu être déplacé';
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Vérification de l'existance de l'étudiant
|
||||
|
||||
$getEtudiant = $this->pdo->query("SELECT `count(*)` FROM `etudiant` WHERE `nom` = :etudiant");
|
||||
|
||||
if($getEtudiant != 1) {return 'unknown_user'};
|
||||
|
||||
// Vérification du groupe
|
||||
|
||||
$getGroupe = $this->pdo->query("SELECT `count(*)` FROM `groupes` ORDER BY `:groupe`");
|
||||
|
||||
if($getGroupe != 1) {return 'unknown_group'};
|
||||
|
||||
// Si l'étudiant n'appartient à aucun groupe
|
||||
|
||||
$getGroupeEtudiant = getGroupeEtudiant($etudiant);
|
||||
|
||||
if($getGroupeEtudiant) {
|
||||
|
||||
$this->pdo->query("UPDATE `etudiant` SET `groupe` = `:groupe` WHERE `etudiant` == `:etudiant`");
|
||||
}
|
||||
else {
|
||||
|
||||
$this->pdo->query("INSERT INTO `etudiant`(`groupe`) VALUES (`:groupe`) WHERE `etudiant` == `:etudiant`");
|
||||
}
|
||||
|
||||
if(getGroupeEtudiant($etudiant) == $groupe) {
|
||||
|
||||
return 'success';
|
||||
}
|
||||
else {
|
||||
|
||||
return 'error';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -120,9 +120,20 @@ require_once __ROOT__.'/manager/database.php';
|
|||
$answer->answer = 'error';
|
||||
break;
|
||||
|
||||
/******************************************************/
|
||||
/***** déplace un étudiant d'un groupe à un autre *****/
|
||||
/******************************************************/
|
||||
|
||||
case 'move':
|
||||
$areSetParam = isset($request->groupe) && isset($request->etudiant); // Les arguments existent
|
||||
$typeOkParam = $areSetParam && is_string($request->groupe) && is_string($request->etudiant); // Les argument sont du bon type
|
||||
$nEmptyParam = $typeOkParam && strlen($request->etudiant) > 0 && strlen($request->groupe); // Vérification de la taille
|
||||
$utilisateurCheck = $nEmptyParam && preg_match('/^[\w -]{3,50}$/i', $request->etudiant); // Etudiant au bon format
|
||||
$groupeCheck = $utilisateurCheck && preg_match('/^[a-z -]{1,50}$/i', $request->groupe); // Groupe au bon format
|
||||
|
||||
|
||||
$reponseDb = deplacerEtudiant($etudiant,$groupe); // Réponse de la base de donnée
|
||||
$reponseDb != 'error' ? $answer->$reponseDb = 'success' : $answer->$reponseDb = 'error' ; // On retourne en fonction de la réponse de la DB
|
||||
break;
|
||||
|
||||
/***********/
|
||||
/* DEFAULT */
|
||||
|
|
Loading…
Reference in New Issue