diff --git a/WEB-INF/src/controleur/ThreadController.java b/WEB-INF/src/controleur/ThreadController.java
index 44a1c7a79d963dbe2c5427bf02dc4eb517a8dd31..ccb0f863e030b870cff25d78aa7a6644eac97d60 100644
--- a/WEB-INF/src/controleur/ThreadController.java
+++ b/WEB-INF/src/controleur/ThreadController.java
@@ -52,7 +52,11 @@ public class ThreadController extends HttpServlet {
                 vue = "WEB-INF/vue/accueil.jsp";
                 break;
             case "open":
-                vue = "WEB-INF/vue/chat.jsp?id=" + idThread;
+                if(daoFollower.userIsInThread(username, idThread)){
+                    vue = "WEB-INF/vue/chat.jsp?id=" + idThread;
+                    break;
+                }
+                vue = "WEB-INF/vue/fils.jsp";
                 break;
             case "create":
                 String name = req.getParameter("name");
diff --git a/WEB-INF/src/modele/dao/DaoFollower.java b/WEB-INF/src/modele/dao/DaoFollower.java
index 2870eeb0c8841e19347c3b272594e337bd7faef6..67b147a0bd5700bfbc1e870192e44d352d5ce994 100644
--- a/WEB-INF/src/modele/dao/DaoFollower.java
+++ b/WEB-INF/src/modele/dao/DaoFollower.java
@@ -99,4 +99,18 @@ public class DaoFollower {
         }
         return res;
     }
+
+
+    public boolean userIsInThread(String username, int idThread){
+        DS bdd = DS.getInstance();
+        try(Connection con = bdd.getConnection()) {
+            PreparedStatement ps = con.prepareStatement("SELECT * FROM followers WHERE id_thread = ? AND username = ?");
+            ps.setInt(1, idThread);
+            ps.setString(2, username);
+            ResultSet rs = ps.executeQuery();
+            return rs.next();
+        } catch (SQLException e) {
+            throw new RuntimeException(e);
+        }
+    }
 }