diff --git a/controller/ControleurObjet.php b/controller/ControleurObjet.php
index c9f7812a5ac4fe277b8dac98f1ad255ff368b7f7..7dfa733098803db3c3c36bb0ad32d9e0e4609c3e 100644
--- a/controller/ControleurObjet.php
+++ b/controller/ControleurObjet.php
@@ -127,4 +127,31 @@ class ControleurObjet
             'pageContent' => "Il manque des paramètres dans l'url."
         ]);
     }
+
+    public static function supprimerObjet(): string
+    {
+        $pageTitle = "Suppression d'un(e) {$_GET["tableName"]}";
+        if (!empty($_GET["tableName"]) && !empty($_GET["idName"]) && !empty($_GET["idValue"])){
+            $response = Objet::deleteObjectById($_GET["tableName"],
+                [
+                    "name" => $_GET["idName"],
+                    "value" => $_GET["idValue"]
+                ]);
+            if($response){
+                return view('simple-data', [
+                    'pageTitle' => $pageTitle,
+                    'pageContent' => "Objet supprimé avec succès."
+                ]);
+            }else{
+                return view('simple-data', [
+                    'pageTitle' => $pageTitle,
+                    'pageContent' => "Erreur lors de la suppression de l'objet."
+                ]);
+            }
+        }
+        return view('simple-data', [
+            'pageTitle' => $pageTitle,
+            'pageContent' => "Il manque des paramètres dans l'url."
+        ]);
+    }
 }
\ No newline at end of file
diff --git a/index.php b/index.php
index 60e332d315a14601ec276e082cd7fb9b002ec050..3bdc28580dbb75ccd88d6c62e6667431bbea083e 100644
--- a/index.php
+++ b/index.php
@@ -21,16 +21,17 @@ if (empty($_REQUEST["action"])) {
     // C'est plus long que get_class_methods mais c'est moins sujet à problèmes.
     try {
         echo match ($_REQUEST["action"]) {
-            "lireAuteur"    => ControleurAuteur::lireAuteur(),
-            "lireAuteurs"   => ControleurAuteur::lireAuteurs(),
-            "creerObjet"    => ControleurObjet::createObject(),
-            "lireAdherent"  => ControleurAdherent::lireAdherent(),
-            "lireAdherents" => ControleurAdherent::lireAdherents(),
-            "lireLivre"     => ControleurLivre::lireLivre(),
-            "lireLivres"    => ControleurLivre::lireLivres(),
-            "describeTable" => ControleurObjet::describeTable(),
-            "modifierObjet" => ControleurObjet::modifyObject(),
-            default         => ControleurAuteur::lireAuteur(),
+            "lireAuteur"     => ControleurAuteur::lireAuteur(),
+            "lireAuteurs"    => ControleurAuteur::lireAuteurs(),
+            "creerObjet"     => ControleurObjet::createObject(),
+            "lireAdherent"   => ControleurAdherent::lireAdherent(),
+            "lireAdherents"  => ControleurAdherent::lireAdherents(),
+            "lireLivre"      => ControleurLivre::lireLivre(),
+            "lireLivres"     => ControleurLivre::lireLivres(),
+            "describeTable"  => ControleurObjet::describeTable(),
+            "modifierObjet"  => ControleurObjet::modifyObject(),
+            "supprimerObjet" => ControleurObjet::supprimerObjet(),
+            default          => ControleurAuteur::lireAuteur(),
         };
     } catch (Exception $e) {
         echo "Erreur lors de l'affichage de la page: " . $e->getMessage();
diff --git a/models/Objet.php b/models/Objet.php
index 4c2bd6a5d2b6165e818856eac39ef38397539d67..468e42937fbf81aa43e63a00610aa83d17ada70e 100644
--- a/models/Objet.php
+++ b/models/Objet.php
@@ -42,6 +42,7 @@ class Objet
     public static function addObject(String $tableName, array $columns) : array
     {
         $result["status"] = "success";
+        $result["message"] = "$tableName créé avec succès !";
 
         $validation = Objet::verifyTableAndFormat($tableName, $columns);
         if($validation["status"] !== "success"){
@@ -225,4 +226,27 @@ class Objet
             "message" => "Validation réussie."
         ];
     }
+
+    public static function deleteObjectById(string $tableName, array $id): bool
+    {
+        $validation = Objet::verifyTableAndFormat($tableName);
+        if($validation["status"] !== "success"){
+            return false;
+        }
+        if(empty($id["name"]) || empty($id["value"]) || !isAlphaNumeric($id["name"])){
+            return false;
+        }
+
+        // On prépare la requête
+        $queryString = ("DELETE FROM $tableName WHERE " . $id["name"] . "=?");
+        $insertQuery = Database::pdo()->prepare($queryString);
+        try{
+            // Et on l'exécute
+            $insertQuery->execute([$id["value"]]);
+        } catch (PDOException $e) {
+            echo $e->getMessage();
+            return false;
+        }
+        return true;
+    }
 }
\ No newline at end of file