From c56c1e18728c636e53a7d35059cc0cf2e5a42467 Mon Sep 17 00:00:00 2001
From: Yannis Devos <yannis.devos.etu@univ-lille.fr>
Date: Fri, 28 Feb 2025 10:34:22 +0100
Subject: [PATCH] =?UTF-8?q?Ajout=20d'une=20m=C3=A9thode=20dans=20UserDAO?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WEB-INF/src/controleurs/Authent.java | 35 ++--------------------------
 WEB-INF/src/dao/UserDAO.java         | 27 +++++++++++++++++++--
 2 files changed, 27 insertions(+), 35 deletions(-)

diff --git a/WEB-INF/src/controleurs/Authent.java b/WEB-INF/src/controleurs/Authent.java
index ff26810..2a7659c 100644
--- a/WEB-INF/src/controleurs/Authent.java
+++ b/WEB-INF/src/controleurs/Authent.java
@@ -1,45 +1,14 @@
 package controleurs;
 
-
-import dao.BDConnection;
+import dao.UserDAO;
 import jakarta.servlet.annotation.WebServlet;
 import jakarta.servlet.http.HttpServlet;
 import jakarta.servlet.http.HttpServletRequest;
 import jakarta.servlet.http.HttpServletResponse;
 
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
 @WebServlet("/Authentification")
 public class Authent extends HttpServlet {
-    private Connection con = new BDConnection().getConnection();
 
     @Override
-    public void service(HttpServletRequest req, HttpServletResponse res){
-        try {
-            PrintWriter out = res.getWriter();
-
-            String log = req.getParameter("login");
-            String pwd = req.getParameter("pwd");
-
-            PreparedStatement stmt = con.prepareStatement("SELECT username,password FROM userAccount WHERE username=? AND password=?"); //à changer pour utiliser le DAO
-            stmt.setString(1, log);
-            stmt.setString(2, pwd);
-
-            ResultSet rs = stmt.executeQuery();
-
-            if (rs.next()) {
-                out.println("<h1>Bienvenue " + log + " !</h1>");
-            } else {
-                out.println("<h1>Login ou mot de passe incorrect</h1>");
-            }
-
-        }catch (SQLException | IOException except){
-            except.getStackTrace();
-        }
-    }
+    public void service(HttpServletRequest req, HttpServletResponse res){}
 }
diff --git a/WEB-INF/src/dao/UserDAO.java b/WEB-INF/src/dao/UserDAO.java
index dfa3065..f08b50b 100644
--- a/WEB-INF/src/dao/UserDAO.java
+++ b/WEB-INF/src/dao/UserDAO.java
@@ -17,7 +17,6 @@ public class UserDAO extends HttpServlet{
     }
 
     public List<User> getAllUsers(){
-        StringBuilder txt = new StringBuilder();
         ArrayList<User> users = new ArrayList<>();
         try{
             Statement stmt = this.con.createStatement();
@@ -38,8 +37,32 @@ public class UserDAO extends HttpServlet{
         return users;
     }
 
+    public User getUserByLogs(String username, String password){
+        User user = new User(0,null,null);
+
+        try{
+            PreparedStatement stmt = con.prepareStatement("SELECT username,password FROM userAccount WHERE username=? AND password=?"); //à changer pour utiliser le DAO
+            stmt.setString(1, username);
+            stmt.setString(2, password);
+
+            ResultSet rs = stmt.executeQuery();
+
+            if (rs.next()) {
+                int userId = rs.getInt(1);
+                String login = rs.getString(2);
+                String pwd = rs.getString(3);
+
+                user = new User(userId,login,pwd);
+            }
+
+        } catch (SQLException sqle) {
+            sqle.getStackTrace();
+        }
+
+        return user;
+    }
+
     public User getUserById(int id){
-        StringBuilder txt = new StringBuilder();
         User user = new User(0,null,null);
 
         try{
-- 
GitLab