diff options
Diffstat (limited to 'Database/meth_dbmission.php')
| -rw-r--r-- | Database/meth_dbmission.php | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/Database/meth_dbmission.php b/Database/meth_dbmission.php new file mode 100644 index 0000000..006f572 --- /dev/null +++ b/Database/meth_dbmission.php @@ -0,0 +1,59 @@ +<?php +// **************************************************************************** +// Description: Ensemble de méthodes pour étendre dbmain afin +// d'effectuer des recherches dans la bdd +// **************************************************************************** +// Infos pour les "join": +// https://www.freecodecamp.org/news/sql-joins-tutorial/ +// +// Import de dbmain +require_once(dirname( __FILE__ )."/dbmain.php"); +// Extension de cette classe avec dbmain +class DbMission extends DbMain { + + // Enregistrement d'une mission + final public function register_mission($subject, $note, $review, $clientId, $proId) { + // Vérification de l'existance de l'id de consultant + $exist = $this->check_exist_pro($proId); + // Si il existe + if ($exist) { + // Préparation de la requète pour enregistrement de la mission + $reqAddMission = "INSERT INTO ".$this->tableMission." + (date, subject, note, review, clientId, proId) + VALUES (?, ?, ?, ?, ?, ?)"; + // Exécution de la requète + $this->exec_cmd($reqAddMission, + array(date("Y-m-d H:i:s"), $subject, + $note, $review, + $clientId, $proId + ) + ); + // Retourne 1 pour réussite + return 1; + } else { + // Retourne 0 pour échec + return 0; + } + } + + // Récupérations des missions d'un pro par son id + final public function get_mission_by_id($id) { + $reqGetAllMission = "SELECT subject, note, review, lastname FROM ".$this->tableMission." + LEFT JOIN ".$this->tableUserInfo." + ON ".$this->tableMission.".missionId = ".$this->tableUserInfo.".userId + WHERE proId = ?"; + $data = $this->exec_cmd($reqGetAllMission, array($id))->fetchAll(PDO::FETCH_ASSOC); + return $data; + } + + // Compte le nombre de mission d'un consultant par son nom + final public function count_pro_missions_by_lastname($name) { + $reqCountMission = "SELECT COUNT(*) FROM ".$this->tableMission." + INNER JOIN ".$this->tableUserInfo." + ON ".$this->tableMission.".proId = ".$this->tableUserInfo.".userId + WHERE lastname = ?"; + $data = $this->exec_cmd($reqCountMission, array($name))->fetchAll(PDO::FETCH_ASSOC); + return $data; + } + +}
\ No newline at end of file |
