diff --git a/app/controller/PartieController.php b/app/controller/PartieController.php
index 6bbcf85b0473e0e1a3d7f72fd6fdc35c1fc312a5..98e8ab86a852d8c0e05b6f19b76e405c804cb8dc 100644
--- a/app/controller/PartieController.php
+++ b/app/controller/PartieController.php
@@ -10,6 +10,10 @@ class PartieController extends Controller
 {
     public function displayStep0()
     {
+        if(isset($_SESSION['errMsg'])){
+            $this->view->errMsg = $_SESSION['errMsg'];
+            unset($_SESSION['errMsg']);
+        }
         $this->view->liste = Jeu::getList();
         $this->view->display();
     }
@@ -19,7 +23,10 @@ class PartieController extends Controller
         session_start();
         if (!isset($_SESSION['jeu_select']))
             header("Location:../add_partie");
-
+        if(isset($_SESSION['errMsg'])){
+            $this->view->errMsg = $_SESSION['errMsg'];
+            unset($_SESSION['errMsg']);
+        }
         $this->view->jeuactuel = $_SESSION['jeu_select'];
         $this->view->listej = Profil::getList();
         $this->view->display();
@@ -32,7 +39,10 @@ class PartieController extends Controller
             header("Location:../add_partie");
         if (!isset($_SESSION['joueurs_select']))
             header("Location:../add_partie/step1");
-
+        if(isset($_SESSION['errMsg'])){
+            $this->view->errMsg = $_SESSION['errMsg'];
+            unset($_SESSION['errMsg']);
+        }
 
         $this->view->jeuactuel = $_SESSION['jeu_select'];
         $this->view->listejactuel = $_SESSION['joueurs_select'];
@@ -44,7 +54,10 @@ class PartieController extends Controller
         session_start();
         if (!isset($_SESSION['jeu_select']) || !isset($_SESSION['equipes']))
             header("Location:../add_partie");
-
+        if(isset($_SESSION['errMsg'])){
+            $this->view->errMsg = $_SESSION['errMsg'];
+            unset($_SESSION['errMsg']);
+        }
         $this->view->jeuactuel = $_SESSION['jeu_select'];
         $this->view->listej = Profil::getList();
         $this->view->equipes = $_SESSION['equipes'];
@@ -58,7 +71,10 @@ class PartieController extends Controller
             header("Location:../add_partie");
         if (!isset($_SESSION['equipes']))
             header("Location:../add_partie/stepe1");
-
+        if(isset($_SESSION['errMsg'])){
+            $this->view->errMsg = $_SESSION['errMsg'];
+            unset($_SESSION['errMsg']);
+        }
 
         $this->view->jeuactuel = $_SESSION['jeu_select'];
         $this->view->equipes = $_SESSION['equipes'];
@@ -70,18 +86,41 @@ class PartieController extends Controller
         $this->view->display();
     }
 
+    private static function error($errstr, $step){
+        session_start();
+        $_SESSION['errMsg'] = $errstr;
+        if($step == "step0"){
+            header("Location:../add_partie");
+        }
+        else if($step == "step1"){
+            header("Location:step1");
+        }
+        else if($step == "step2"){
+            header("Location:step2");
+        }
+        else if($step == "stepe1"){
+            header("Location:stepe1");
+        }
+        else if($step == "stepe2"){
+            header("Location:stepe2");
+        }
+        else{
+            header("Location:../add_partie");
+        }
+    }
+
     public static function verifyStep0()
     {
 
         if (!isset($_POST['jeu'])) {
             //appeler une fonction d'erreur
-            echo "<h1>Erreur : variables absentes</h1>";
+            self::error("<h1>Erreur : variables absentes</h1>", "step0");
             die();
         }
         $jeu = $_POST['jeu'];
 
         if (!Jeu::checkExistsNom($jeu)) {
-            echo "<h1>Erreur : le jeu entré est introuvable dans la BD.</h1>";
+            self::error("<h1>Erreur : le jeu entré est introuvable dans la BD.</h1>", "step0");
             die();
         }
 
@@ -100,17 +139,26 @@ class PartieController extends Controller
         session_start();
         if (!isset($_SESSION['jeu_select']))
             header("Location:../add_partie");
+
+        $jeu = $_SESSION['jeu_select'];
+
         if (!isset($_POST["joueur"])) {
-            echo "<h1>Erreur : pas de joueur entré.</h1>";
+            if ($jeu->type == 'equipes')
+                self::error("<h1>Erreur : pas de joueur entré.</h1>", "stepe1");
+            else
+                self::error("<h1>Erreur : pas de joueur entré.</h1>", "step1");
             die();
         }
-        $jeu = $_SESSION['jeu_select'];
+
         $joueur = $_POST["joueur"];
 
         if (Profil::checkExists($joueur)) {
             $joueur_objet = Profil::getFromSlug($joueur);
         } else {
-            echo "<h1>Erreur : le joueur est introuvable dans la base de données.</h1>";
+            if ($jeu->type == 'equipes')
+                self::error("<h1>Erreur : le joueur est introuvable dans la base de données.</h1>", "stepe1");
+            else
+                self::error("<h1>Erreur : le joueur est introuvable dans la base de données.</h1>", "step1");
             die();
         }
 
@@ -118,7 +166,7 @@ class PartieController extends Controller
             $ke = $_POST['equipejadd'];
             foreach ($_SESSION['equipes'] as $equipe) {
                 if (in_array($joueur_objet, $equipe)) {
-                    echo "<h1>Erreur : le joueur a déjà été inscrit pour cette partie.</h1>";
+                    self::error("<h1>Erreur : le joueur a déjà été inscrit pour cette partie.</h1>", "stepe1");
                     die();
                 }
             }
@@ -127,17 +175,15 @@ class PartieController extends Controller
         } else {
             if (!isset($_SESSION['joueurs_select'])) {
                 $_SESSION['joueurs_select'] = array($joueur_objet);
-                echo "<h1>L'ajout s'est bien passé.</h1>";
                 header("Location:step1");
             }
 
             if (!in_array($joueur_objet, $_SESSION['joueurs_select']))
                 array_push($_SESSION['joueurs_select'], $joueur_objet);
             else {
-                echo "<h1>Erreur : le joueur a déjà été inscrit pour cette partie.</h1>";
+                self::error("<h1>Erreur : le joueur a déjà été inscrit pour cette partie.</h1>", "step1");
                 die();
             }
-            echo "<h1>L'ajout s'est bien passé.</h1>";
             header("Location:step1");
         }
     }
@@ -177,7 +223,10 @@ class PartieController extends Controller
         }
 
         if (!isset($_POST['joueurdel'])) {
-            echo "<h1>Erreur : variables manquantes.</h1>";
+            if ($_SESSION['jeu_select']->type == 'equipes')
+            self::error("<h1>Erreur : variables manquantes.</h1>", "stepe1");
+            else
+                self::error("<h1>Erreur : variables manquantes.</h1>", "step1");
             die();
         }
 
@@ -206,12 +255,12 @@ class PartieController extends Controller
         if (!isset($_SESSION['equipes']))
             header("Location:stepe1");
         if (count($_SESSION['equipes']) <= 1) {
-            echo "<h1>Erreur : vous ne pouvez pas supprimer la seule équipe restante.</h1>";
+            self::error("<h1>Erreur : vous ne pouvez pas supprimer la seule équipe restante.</h1>", "stepe1");
             die();
         }
 
         if (!isset($_POST['equipe'])) {
-            echo "<h1>Erreur : variables manquantes.</h1>";
+            self::error("<h1>Erreur : variables manquantes.</h1>", "stepe1");
             die();
         }
 
@@ -229,7 +278,7 @@ class PartieController extends Controller
         if (!isset($_SESSION['jeu_select']))
             header("Location:../add_partie");
         if (count($_SESSION['equipes']) == $_SESSION['jeu_select']->max_equipes) {
-            echo "<h1>Erreur : vous ne pouvez pas créer d'équipe supplémentaire.</h1>";
+            self::error("<h1>Erreur : vous ne pouvez pas créer d'équipe supplémentaire.</h1>", "stepe1");
             die();
         }
 
@@ -248,24 +297,24 @@ class PartieController extends Controller
                 header("Location:stepe1");
             $equipes = $_SESSION['equipes'];
             if (count($equipes) < $jeu_actuel->min_equipes) {
-                echo "<h1>Erreur : il n'y a pas assez d'équipes.</h1>";
+                self::error("<h1>Erreur : il n'y a pas assez d'équipes.</h1>", "stepe1");
                 die();
             }
             if (count($equipes) > $jeu_actuel->max_equipes) {
-                echo "<h1>Erreur : il y a trop d'équipes.</h1>";
+                self::error("<h1>Erreur : il y a trop d'équipes.</h1>", "stepe1");
                 die();
             }
 
             foreach ($equipes as $ke => $e) {
                 if (count($e) < $jeu_actuel->min_joueurs) {
                     $ke = $ke + 1;
-                    echo "<h1>Erreur : il n'y a pas assez de joueurs dans l'équipe $ke.</h1>";
+                    self::error("<h1>Erreur : il n'y a pas assez de joueurs dans l'équipe $ke.</h1>", "stepe1");
                     die();
                 }
                 if (!is_null($jeu_actuel->max_joueurs)) {
                     if (count($e) > $jeu_actuel->max_joueurs) {
                         $ke = $ke + 1;
-                        echo "<h1>Erreur : il y a trop de joueurs dans l'équipe $ke.</h1>";
+                        self::error("<h1>Erreur : il y a trop de joueurs dans l'équipe $ke.</h1>", "stepe1");
                         die();
                     }
                 }
@@ -277,11 +326,11 @@ class PartieController extends Controller
                 header("Location:step1");
             $joueurs = $_SESSION['joueurs_select'];
             if (count($joueurs) < $jeu_actuel->min_joueurs) {
-                echo "<h1>Erreur : il n'y a pas assez de joueurs.</h1>";
+                self::error("<h1>Erreur : il n'y a pas assez de joueurs.</h1>", "step1");
                 die();
             }
             if (count($joueurs) > $jeu_actuel->max_joueurs) {
-                echo "<h1>Erreur : il y a trop de joueurs.</h1>";
+                self::error("<h1>Erreur : il y a trop de joueurs.</h1>", "step1");
                 die();
             }
             header('Location:step2');
@@ -295,7 +344,7 @@ class PartieController extends Controller
     {
         session_start();
         if (!isset($_SESSION['jeu_select']))
-            header("Location:../add_partie");
+            self::error("<h1>Erreur : le jeu doit être renseigné.</h1>", "step0");
 
         $jeu = $_SESSION['jeu_select'];
         if ($jeu->type == 'equipes') {
@@ -307,8 +356,10 @@ class PartieController extends Controller
         }
 
         if (!isset($_POST['scores'])) {
-            //appeler une fonction d'erreur
-            echo "<h1>Erreur : variables absentes</h1>";
+            if ($jeu->type == 'equipes')
+                self::error("<h1>Erreur : variables absentes</h1>", "stepe2");
+            else
+                self::error("<h1>Erreur : variables absentes</h1>", "step2");
             die();
         }
 
@@ -316,7 +367,10 @@ class PartieController extends Controller
         $scores = $_POST["scores"];
         foreach ($scores as $s) {
             if (!is_numeric($s)) {
-                echo "<h1>Erreur : les scores doivent être des nombres.</h1>";
+                if ($jeu->type == 'equipes')
+                    self::error("<h1>Erreur : les scores doivent être des nombres.</h1>", "stepe2");
+                else
+                    self::error("<h1>Erreur : les scores doivent être des nombres.</h1>", "step2");
                 die();
             }
         }
@@ -325,8 +379,7 @@ class PartieController extends Controller
             $ns = count($scores);
             $nj = count($equipes);
             if ($ns != $nj) {
-                //appeler une fonction d'erreur
-                echo "<h1>Erreur : scores et joueurs incohérents</h1>";
+                self::error("<h1>Erreur : scores et joueurs incohérents</h1>", "stepe2");
                 die();
             }
 
@@ -338,11 +391,11 @@ class PartieController extends Controller
             }
             switch ($pb) {
                 case 2:
-                    echo "<h1>Erreur de connexion à la BD.</h1>";
+                    self::error("<h1>Erreur de connexion à la BD.</h1>", "stepe2");
                     die();
                     break;
                 default:
-                    echo "<h1>Erreur non gérée.</h1>";
+                    self::error("<h1>Erreur non gérée.</h1>", "stepe2");
                     die();
                     break;
             }
@@ -351,24 +404,23 @@ class PartieController extends Controller
             $ns = count($scores);
             $nj = count($joueurs);
             if ($ns != $nj) {
-                //appeler une fonction d'erreur
-                print_r($scores);
-                echo "<h1>Erreur : scores et joueurs incohérents</h1>";
+                self::error("<h1>Erreur : scores et joueurs incohérents</h1>", "step2");
                 die();
             }
             $pb = Partie::addPartie($joueurs, $scores, $jeu);
             if (!$pb) {
                 unset($_SESSION['jeu_select']);
                 unset($_SESSION['joueurs_select']);
+                self::error("<h1>Erreur : scores et joueurs incohérents</h1>", "step2");
                 header('Location:valid'); // Redirection vers la page OK
             }
             switch ($pb) {
                 case 2:
-                    echo "<h1>Erreur de connexion à la BD.</h1>";
+                    self::error("<h1>Erreur de connexion à la BD.</h1>", "step2");
                     die();
                     break;
                 default:
-                    echo "<h1>Erreur non gérée.</h1>";
+                    self::error("<h1>Erreur non gérée.</h1>", "step2");
                     die();
                     break;
             }
diff --git a/app/view/Partie/displayStep0.html b/app/view/Partie/displayStep0.html
index 8d5b6d4ba4fe77296da1aaeed1aa9b838a213f44..593248e4b8b8dfcfd47eae688fe34ccd7ead1fc3 100644
--- a/app/view/Partie/displayStep0.html
+++ b/app/view/Partie/displayStep0.html
@@ -8,7 +8,9 @@
 	$page_title = "Formulaire d'ajout de partie"; 
 	include(ROOT."/app/view/Includes/header.include.html"); 
 ?>
-
+<?php	if (!is_null($this->errMsg)){ ?>
+<article class="msg-erreur"><?php echo $this->errMsg;?></article>
+<?php } ?>
     <article>
         <h2>Formulaire d'ajout de partie</h2>
         <h3>Sélection d'un jeu</h3>
diff --git a/app/view/Partie/displayStep1.html b/app/view/Partie/displayStep1.html
index 75c609ac44fd0c27e5d05821c5f13be67d4b08c3..bc842ccfc84eb0ef4362279db72185ccbd1d5080 100644
--- a/app/view/Partie/displayStep1.html
+++ b/app/view/Partie/displayStep1.html
@@ -3,6 +3,9 @@
 	include(ROOT."/app/view/Includes/header.include.html");
 ?>
 <?php $jeuactuel = $this->jeuactuel ?>
+<?php	if (!is_null($this->errMsg)){ ?>
+<article class="msg-erreur"><?php echo $this->errMsg;?></article>
+<?php } ?>
 <article>
     <h2>Formulaire d'ajout de partie</h2>
     <h3>Sélection des joueurs</h3>
diff --git a/app/view/Partie/displayStep2.html b/app/view/Partie/displayStep2.html
index 287c7b32b5e1e1a944cb2a7d0ca6acafc986c868..83f9e07cdf6d5b2297d5815754c338f4581bcd7a 100644
--- a/app/view/Partie/displayStep2.html
+++ b/app/view/Partie/displayStep2.html
@@ -3,6 +3,9 @@
 	include(ROOT."/app/view/Includes/header.include.html"); 
 ?>
 <?php $jeuactuel = $this->jeuactuel ?>
+<?php	if (!is_null($this->errMsg)){ ?>
+<article class="msg-erreur"><?php echo $this->errMsg;?></article>
+<?php } ?>
 <article>
     <h2>Formulaire d'ajout de partie</h2>
     <h3>Entrée des scores</h3>
diff --git a/app/view/Partie/displayStepe1.html b/app/view/Partie/displayStepe1.html
index 07be415931d2e33e621d61ad1e96ad14a8276845..eebe71368defbd3f0a236fb044d5dd1ac0db08f8 100644
--- a/app/view/Partie/displayStepe1.html
+++ b/app/view/Partie/displayStepe1.html
@@ -3,6 +3,9 @@
 	include(ROOT."/app/view/Includes/header.include.html");
 ?>
 <?php $jeuactuel = $this->jeuactuel ?>
+<?php	if (!is_null($this->errMsg)){ ?>
+<article class="msg-erreur"><?php echo $this->errMsg;?></article>
+<?php } ?>
 <article>
     <h2>Formulaire d'ajout de partie</h2>
     <h3>Sélection des joueurs</h3>
diff --git a/app/view/Partie/displayStepe2.html b/app/view/Partie/displayStepe2.html
index 2f9289438fec9e202760f836e28d5897c99e460d..ecf8b2a6d88efa9ee1c5fa265a6a67bd179f1686 100644
--- a/app/view/Partie/displayStepe2.html
+++ b/app/view/Partie/displayStepe2.html
@@ -3,6 +3,9 @@
 	include(ROOT."/app/view/Includes/header.include.html"); 
 ?>
 <?php $jeuactuel = $this->jeuactuel ?>
+<?php	if (!is_null($this->errMsg)){ ?>
+<article class="msg-erreur"><?php echo $this->errMsg;?></article>
+<?php } ?>
 <article>
     <h2>Formulaire d'ajout de partie</h2>
     <h3>Entrée des scores</h3>