diff --git a/WEB-INF/src/controleurs/SignUp.java b/WEB-INF/src/controleurs/SignUp.java index 821547902a697eefd780ba0ce6848060d24fdae8..bba2c247716b9be41b112adff3d8a7edcd6592b1 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 4ff0869ea2e54d23cc47c48dbed8af925000eba2..20bee1fc294dfbec8568b86265d434bfcae50aec 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 (?,?)");