tableUserAccount; // https://www.php.net/manual/fr/pdostatement.fetch.php // "PDO::FETCH_ASSOC: retourne un tableau indexé // par le nom de la colonne comme retourné dans le jeu de résultats" $result = $this->exec_cmd($reqGetAll, array())->fetchAll(PDO::FETCH_ASSOC); return $result; } // https://stackoverflow.com/questions/1361340/how-can-i-do-insert-if-not-exists-in-mysql // Suppresion d'un utilisateur final public function del_user_by_userid($userId) { // Préparation de la requète pour voir si l'utilisateur existe // https://stackoverflow.com/questions/1676551/best-way-to-test-if-a-row-exists-in-a-mysql-table $reqCheckExistId = " SELECT EXISTS( SELECT 1 FROM ".$this->tableUserAccount." WHERE userId = ? LIMIT 1 )"; // Exécution de la requète, fetchall pour avoir le résultat // https://www.php.net/manual/fr/pdostatement.fetch.php // struct par défaut req et index (fetch_both) = arr([0] => arr("req" => BOOL, [0] => BOOL)) // PDO::FETCH_NUM : retourne un tableau indexé par le numéro de la colonne comme elle // est retourné dans votre jeu de résultat, commençant à 0 $reqResult = $this->exec_cmd($reqCheckExistId, array($userId))->fetchAll(PDO::FETCH_NUM); // Si il existe if ($reqResult[0][0]) { // Préparation de la requète pour suppression $reqDelUser = "DELETE FROM ".$this->tableUserAccount." WHERE userId = ?"; // Exécution de la requète $this->exec_cmd($reqDelUser, array($userId)); // Retourne true pour réussite return true; } else { // Retourne false pour échec return false; } } // **************************************************************************** // GESTION DES EMPLOIS DANS L'ADMIN // **************************************************************************** // Ajout d'une categorie final public function register_job_category($jobNameEn, $jobNameFr) { // Préparation et execution de la requète pour voir si la categorie existe en anglais $reqCheckjobCategoryNameEn = " SELECT EXISTS( SELECT 1 FROM ".$this->tableJobCategory." WHERE jobCategoryNameEn = ? LIMIT 1 )"; $reqResultEn = $this->exec_cmd($reqCheckjobCategoryNameEn, array($jobNameEn))->fetchAll(PDO::FETCH_NUM); // Si il n'existe pas en anglais if (!$reqResultEn[0][0]) { // Préparation et execution de la requète pour voir si la categorie existe en Français $reqCheckjobCategoryNameFr = " SELECT EXISTS( SELECT 1 FROM ".$this->tableJobCategory." WHERE jobCategoryNameFr = ? LIMIT 1 )"; $reqResultFr = $this->exec_cmd($reqCheckjobCategoryNameFr, array($jobNameFr))->fetchAll(PDO::FETCH_NUM); // Si il n'existe pas en Français non plus if (!$reqResultFr[0][0]) { // Préparation de la requète pour l'ajout $reqjobCategoryNameAdd = " INSERT INTO ".$this->tableJobCategory." (jobCategoryNameEn, jobCategoryNameFr) VALUES (? ,?)"; // Exécution de la requète $this->exec_cmd($reqjobCategoryNameAdd, array($jobNameEn, $jobNameFr)); // Retourne true pour réussite return true; } else { // Retourne false pour échec return false; } } else { // Retourne false pour échec return false; } } // Suppresion d'un utilisateur final public function del_job_category_by_jobid($jobId) { // Préparation de la requète pour voir si l'utilisateur existe $reqCheckExistId = " SELECT EXISTS( SELECT 1 FROM ".$this->tableJobCategory." WHERE jobCategoryId = ? LIMIT 1 )"; // Exécution de la requète, fetchall pour avoir le résultat // struct par défaut req et index (fetch_both) = arr([0] => arr("req" => BOOL, [0] => BOOL)) // fetch_num pour casser l'index "req" en chiffre, dict -> list $reqResult = $this->exec_cmd($reqCheckExistId, array($jobId))->fetchAll(PDO::FETCH_NUM); // Si il existe if ($reqResult[0][0]) { // Préparation de la requète pour suppression $reqDelJobCategory = " DELETE FROM ".$this->tableJobCategory." WHERE jobCategoryId = ?"; // Exécution de la requète $this->exec_cmd($reqDelJobCategory, array($jobId)); // Retourne true pour réussite return true; } else { // Retourne false pour échec return false; } } // **************************************************************************** // GESTION DES MISSIONS DANS L'ADMIN // **************************************************************************** // Suppresion d'une mission final public function del_mission_by_missionid($missionId) { // Préparation de la requète pour voir si l'utilisateur existe $reqCheckExistId = " SELECT EXISTS( SELECT 1 FROM ".$this->tableMission." WHERE missionId = ? LIMIT 1 )"; // Exécution de la requète $reqResult = $this->exec_cmd($reqCheckExistId, array($missionId))->fetchAll(PDO::FETCH_NUM); // Si il existe if ($reqResult[0][0]) { // Préparation de la requète pour suppression $reqDelMission = " DELETE FROM ".$this->tableMission." WHERE missionId = ?"; // Exécution de la requète $this->exec_cmd($reqDelMission, array($missionId)); // Retourne true pour réussite return true; } else { // Retourne false pour échec return false; } } } ?>