diff --git a/app/controller/PartieController.php b/app/controller/PartieController.php
index bb22262b5186d878371cddb9e1d752a19730e57b..b4f0d74a78aedf2ec5609cc42748173435568591 100644
--- a/app/controller/PartieController.php
+++ b/app/controller/PartieController.php
@@ -8,5 +8,14 @@
  */
 class PartieController extends Controller
 {
+    public function displayForm(){
+        $this->view->liste = Jeu::getList();
+        $this->view->listej = Profil::getList();
+        $this->view->display();
+    }
+
+    public function displayValid(){
+        $this->view->display();
+    }
 
 }
\ No newline at end of file
diff --git a/app/kernel/Router.php b/app/kernel/Router.php
index 46e5b23390ad510a0f2fa467fbb4b6c263e74567..8f657f08f64567055d54495a7ada1751c0594320 100644
--- a/app/kernel/Router.php
+++ b/app/kernel/Router.php
@@ -88,7 +88,20 @@ class Router { // classe PHP permettant l'analyse de l'URL des requêtes
 				$result["controller"] = "Register"; 
 				$result["action"] = "verify"; // "verify" pour appeler la méthode de vérification
 			}
-			
+
+			/*** Ajout de partie ***/
+			else if($parts[0] == "add_partie" && count($parts) == 1){ // formulaire d'ajout de partie
+				$result["controller"] = "Partie";
+				$result["action"] = "displayForm"; // "displayForm" pour afficher le formulaire
+			}
+            else if($parts[0] == "add_partie" && count($parts) == 2 && $parts[1] == "valid"){ // Page d'ajout réussie
+                $result["controller"] = "Partie";
+                $result["action"] = "displayValid"; // "displayForm" pour afficher le formulaire
+            }
+            else if($parts[0] == "add_partie" && count($parts) == 2 && $parts[1] == "verify"){ // Page d'ajout réussie
+                $result["controller"] = "Partie";
+                $result["action"] = "verify"; // "displayForm" pour afficher le formulaire
+            }
 			
 			// à chaque fois qu'on crée une nouvelle page, il faut rajouter un cas à cet endroit !
 			
diff --git a/app/model/Partie.php b/app/model/Partie.php
index 003512a32785fdc1ecb442ce5a613941541bcd7c..be577c29aa3f028266263943815c87206c9f1984 100644
--- a/app/model/Partie.php
+++ b/app/model/Partie.php
@@ -27,17 +27,17 @@ class Partie extends Model
         return $stmt->fetchAll();
     }
 
-    public static function checkExists($slug_partie) { // méthode permettant de vérifier si un jeu existe dans la BDD
+    public static function checkExists($slug_partie) { // méthode permettant de vérifier si une partie existe dans la BDD
         $db = Database::getInstance(); // on récupère la connexion à la BDD
         $sql = "SELECT * FROM R_partie WHERE slug = :slug";
         $req = $db->prepare($sql); // on prépare la requête
         $req->execute(array(":slug" => $slug_partie)); // on remplace les variables dans la requête
 
         if ($result = $req->fetch()) { // on récupère l'enregistrement, s'il existe
-            return 1;
+            return true;
         }
 
-      return 0; // on aurait pu mettre deux return (un dans le if et un ici), mais bon...
+      return false; // on aurait pu mettre deux return (un dans le if et un ici), mais bon...
     }
 
     private static function calcul_classement($R){
@@ -60,7 +60,7 @@ class Partie extends Model
         $sql3 = "SELECT score FROM R_joueur_jeu WHERE joueur = :id_joueur AND jeu = :id_jeu;";
         $sql4 = "INSERT INTO R_joueur_partie (partie, joueur, classement, score)
                 VALUES ((:id_jeu, :date), :id_joueur, :classement, :score);";
-        $sql5 = "UPDATE INTO R_joueur_jeu (score) VALUES (:new_score);";
+        $sql5 = "UPDATE R_joueur_jeu SET score = :new_score WHERE joueur = :id_joueur AND jeu = :id_jeu;";
         $stmt0 = $db->prepare($sql0);
         $stmt1 = $db->prepare($sql1);
         $stmt2 = $db->prepare($sql2);
@@ -71,6 +71,9 @@ class Partie extends Model
         if($stmt0->execute(array(":nom_jeu" => $nom_jeu))) {
             if($row = $stmt0->fetch()) {
                 $id_jeu = $row[0];
+                if(!Jeu::checkExists($id_jeu))
+                    throw new UnexpectedValueException;
+
                 if($stmt1->execute(array(":id_jeu" => $id_jeu, ":date" => $date)))
                 {
                     $m = count($joueurs);
@@ -87,7 +90,8 @@ class Partie extends Model
                                         if($stmt4->execute(array(":id_jeu" => $id_jeu, ":date" => $date,
                                             ":id_joueur" => $id_joueur,
                                             ":classement" => $classement, ":score" => $old_score))){
-                                            if($stmt5->execute(array(":new_score"=> $old_score + $diff_scores[$j])))
+                                            if($stmt5->execute(array(":new_score"=> $old_score + $diff_scores[$j],
+                                                ":id_jeu" => $id_jeu,":id_joueur" => $id_joueur )))
                                             {
                                                 //C'est dans la boite
                                             }
diff --git a/app/view/partie/displayForm.html b/app/view/partie/displayForm.html
new file mode 100644
index 0000000000000000000000000000000000000000..15310c807d09c81d80be1cd771800933a67f8b56
--- /dev/null
+++ b/app/view/partie/displayForm.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html lang="fr">
+<head>
+    <meta charset="UTF-8">
+    <title>Formulaire d'ajout de partie</title>
+</head>
+<body>
+<header>
+    <h1>Formulaire d'ajout de partie</h1>
+</header>
+
+<form method="post" action="add_partie/verify">
+    <label for="jeu">Jeu : </label>
+    <select name="jeu" id="jeu">
+    <?php foreach($this->liste as $jeu){ ?>
+        <option><?php echo $jeu->nom; ?></option>
+    <?php } ?>
+    </select>
+    <label for="joueurs">Joueurs :</label>
+    <select name="joueurs" id="joueurs" multiple="multiple" size="5">
+        <?php foreach($this->listej as $joueur){ ?>
+        <option><?php echo $joueur->nom; ?></option>
+        <?php } ?>
+    </select>
+    <br/>
+    <label for="scores">Scores :</label><input type="text" name="scores" id="scores" /><br/>
+    <input type="submit" value="Ajouter" />
+</form>
+
+<footer>
+    <p>Le pied de page</p>
+</footer>
+</body>
+</html>
\ No newline at end of file
diff --git a/app/view/partie/displayValid.html b/app/view/partie/displayValid.html
new file mode 100644
index 0000000000000000000000000000000000000000..566549bdf8fae810809c1a81066000687cb338f6
--- /dev/null
+++ b/app/view/partie/displayValid.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <title>Title</title>
+</head>
+<body>
+
+</body>
+</html>
\ No newline at end of file