From 2cbd0e293aa1f53189fa341a8fac1bc1d074f368 Mon Sep 17 00:00:00 2001 From: Charlie Darques <charlie.darques.etu@univ-lille.fr> Date: Thu, 13 Mar 2025 12:54:22 +0100 Subject: [PATCH] =?UTF-8?q?correction=20authent=20:=20message=20si=20utili?= =?UTF-8?q?sateur=20d=C3=A9j=C3=A0=20connu=20veut=20cr=C3=A9er=20un=20comp?= =?UTF-8?q?te?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WEB-INF/src/controleurs/SignUp.java | 27 ++++++++++++++++----------- WEB-INF/src/dao/UserDAO.java | 7 +++++++ 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/WEB-INF/src/controleurs/SignUp.java b/WEB-INF/src/controleurs/SignUp.java index 8215479..bba2c24 100644 --- a/WEB-INF/src/controleurs/SignUp.java +++ b/WEB-INF/src/controleurs/SignUp.java @@ -25,18 +25,23 @@ public class SignUp extends HttpServlet { } else { - userdao.createUser(login, pwd); - User user = userdao.getUserByLogs(login, pwd); - - if (user != null && userdao.isDatabased(user)){ - out.println("<h1>Bienvenue " + user.getUserName() + " !</h1>"); - req.getSession().setAttribute("user", user); - req.getSession().setAttribute("login", login); - res.sendRedirect("http://localhost:8080/s4a021-web-backend/Welcome"); - }else{ - out.println("<h1>Partez de chez moi ?!</h1>"); - userdao.removeUser(user); + if (!userdao.userExists(login, pwd)) { + userdao.createUser(login, pwd); + User user = userdao.getUserByLogs(login, pwd); + if (user != null && userdao.isDatabased(user)){ + out.println("<h1>Bienvenue " + user.getUserName() + " !</h1>"); + req.getSession().setAttribute("user", user); + req.getSession().setAttribute("login", login); + res.sendRedirect("http://localhost:8080/s4a021-web-backend/Welcome"); + }else{ + out.println("<h1>Partez de chez moi ?!</h1>"); + userdao.removeUser(user); + } + } + else { + out.println("<h1>You already own an account. Please login <a href=\"http://localhost:8080/s4a021-web-backend/index.html\">here</a></h1>"); } + } } } diff --git a/WEB-INF/src/dao/UserDAO.java b/WEB-INF/src/dao/UserDAO.java index 4ff0869..20bee1f 100644 --- a/WEB-INF/src/dao/UserDAO.java +++ b/WEB-INF/src/dao/UserDAO.java @@ -118,6 +118,13 @@ public class UserDAO { return user; } + public boolean userExists(String login, String password) { + if (getUserByLogs(login, password) == null) { + return false; + } + return true; + } + public void addUser(User nUser){ try{ PreparedStatement stmt = this.con.prepareStatement("INSERT INTO userAccount (username, password) VALUES (?,?)"); -- GitLab