Skip to content
Snippets Groups Projects
Commit aad747ce authored by Adrien's avatar Adrien
Browse files

nettoyage + fix bugs

parent b779288c
No related branches found
No related tags found
No related merge requests found
Showing
with 159 additions and 291 deletions
javac -d WEB-INF/classes -cp ../../lib/servlet-api.jar WEB-INF/src/controleur/*.java WEB-INF/src/modele/*.java
\ No newline at end of file
package controleur; package controleur;
import java.time.LocalDate; import java.time.LocalDateTime;
import modele.Utilisateur;
import modele.UtilisateurDao;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import java.io.IOException; import java.io.IOException;
import modele.Utilisateur;
import modele.UtilisateurDao;
@WebServlet("/ajoutUtilisateur") @WebServlet("/ajoutUtilisateur")
public class AjoutUtilisateur extends HttpServlet { public class AjoutUtilisateur extends HttpServlet {
public void service(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {
UtilisateurDao udao = new UtilisateurDao(); @Override
udao.insert(new Utilisateur(-1, req.getParameter("nom"), req.getParameter("email"), req.getParameter("mdp"), LocalDate.now())); protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
req.getRequestDispatcher("/WEB-INF/vue/ajoutUtilisateur.jsp").forward(req, res); req.getRequestDispatcher("/WEB-INF/vue/ajoutUtilisateur.jsp").forward(req, res);
} }
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
UtilisateurDao udao = new UtilisateurDao();
udao.insert(new Utilisateur(
req.getParameter("nom"),
req.getParameter("email"),
req.getParameter("motdepasse"),
LocalDateTime.now()
));
res.sendRedirect(req.getContextPath() + "/ajoutUtilisateur");
}
}
\ No newline at end of file
package controleur;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.sql.*;
import java.nio.charset.StandardCharsets;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import modele.DS;
@WebServlet("/CreateNewFil")
public class CreateNewFil extends HttpServlet {
public void service(HttpServletRequest req, HttpServletResponse res) {
try {
String nom = req.getParameter("nom");
int createur_id = Integer.parseInt(req.getParameter("createur_id"));
String query = "INSERT INTO FilDeDiscussion (nom, createur_id) VALUES (?, ?)";
Connection con = DS.getConnection();
PreparedStatement pstmt = con.prepareStatement(query);
pstmt.setString(1, nom);
pstmt.setInt(2, createur_id);
System.out.println(pstmt);
int n = pstmt.executeUpdate();
System.out.println(n);
req.getRequestDispatcher("CreationFils.jsp").forward(req, res);
con.close();
} catch (Exception e) {
//e.printStackTrace();
System.out.println(e.getMessage());
}
}
}
package controleur;
import java.time.LocalDateTime;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import modele.FilDeDiscussion;
import modele.FilDeDiscussionDAO;
import jakarta.servlet.ServletException;
import java.io.IOException;
@WebServlet("/creationFil")
public class CreationFil extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
req.getRequestDispatcher("/WEB-INF/vue/creationFil.jsp").forward(req, res);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {
FilDeDiscussionDAO f = new FilDeDiscussionDAO();
f.create(new FilDeDiscussion(
-1,
req.getParameter("nom"),
LocalDateTime.now(),
req.getParameter("createuremail")
));
res.sendRedirect(req.getContextPath() + "/creationFil");
}
}
...@@ -3,25 +3,25 @@ package modele; ...@@ -3,25 +3,25 @@ package modele;
import java.time.LocalDate; import java.time.LocalDate;
public class Abonnement { public class Abonnement {
private int idUtilisateur; private String utilisateurEmail;
private int idFil; private int idFil;
private LocalDate dateAbonnement; private LocalDate dateAbonnement;
public Abonnement() { public Abonnement() {
} }
public Abonnement(int idUtilisateur, int idFil, LocalDate dateAbonnement) { public Abonnement(String utilisateurEmail, int idFil, LocalDate dateAbonnement) {
this.idUtilisateur = idUtilisateur; this.utilisateurEmail = utilisateurEmail;
this.idFil = idFil; this.idFil = idFil;
this.dateAbonnement = dateAbonnement; this.dateAbonnement = dateAbonnement;
} }
public int getIdUtilisateur() { public String getUtilisateurEmail() {
return idUtilisateur; return utilisateurEmail;
} }
public void setIdUtilisateur(int idUtilisateur) { public void setUtilisateurEmail(String utilisateurEmail) {
this.idUtilisateur = idUtilisateur; this.utilisateurEmail = utilisateurEmail;
} }
public int getIdFil() { public int getIdFil() {
...@@ -43,7 +43,7 @@ public class Abonnement { ...@@ -43,7 +43,7 @@ public class Abonnement {
@Override @Override
public String toString() { public String toString() {
return "Abonnement{" + return "Abonnement{" +
"idUtilisateur=" + idUtilisateur + "utilisateurEmail=" + utilisateurEmail +
", idFil=" + idFil + ", idFil=" + idFil +
", dateAbonnement=" + dateAbonnement + ", dateAbonnement=" + dateAbonnement +
'}'; '}';
......
...@@ -8,15 +8,15 @@ import java.util.ArrayList; ...@@ -8,15 +8,15 @@ import java.util.ArrayList;
public class AbonnementDao { public class AbonnementDao {
public Abonnement findAbonnement(int idUtilisateur, int idFil) { public Abonnement findAbonnement(String utilisateurEmail, int idFil) {
Abonnement abonnement = new Abonnement(); Abonnement abonnement = new Abonnement();
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM abonnement WHERE idUtilisateur = ? AND idFil = ?"); PreparedStatement ps = con.prepareStatement("SELECT * FROM abonnement WHERE utilisateurEmail = ? AND idFil = ?");
ps.setInt(1, idUtilisateur); ps.setString(1, utilisateurEmail);
ps.setInt(2, idFil); ps.setInt(2, idFil);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
if (rs.next()) { if (rs.next()) {
abonnement.setIdUtilisateur(rs.getInt("idUtilisateur")); abonnement.setUtilisateurEmail(rs.getString("utilisateurEmail"));
abonnement.setIdFil(rs.getInt("idFil")); abonnement.setIdFil(rs.getInt("idFil"));
abonnement.setDateAbonnement(rs.getDate("dateAbonnement").toLocalDate()); abonnement.setDateAbonnement(rs.getDate("dateAbonnement").toLocalDate());
} else { } else {
...@@ -35,7 +35,7 @@ public class AbonnementDao { ...@@ -35,7 +35,7 @@ public class AbonnementDao {
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
while (rs.next()) { while (rs.next()) {
Abonnement abonnement = new Abonnement(); Abonnement abonnement = new Abonnement();
abonnement.setIdUtilisateur(rs.getInt("idUtilisateur")); abonnement.setUtilisateurEmail(rs.getString("utilisateurEmail"));
abonnement.setIdFil(rs.getInt("idFil")); abonnement.setIdFil(rs.getInt("idFil"));
abonnement.setDateAbonnement(rs.getDate("dateAbonnement").toLocalDate()); abonnement.setDateAbonnement(rs.getDate("dateAbonnement").toLocalDate());
abonnements.add(abonnement); abonnements.add(abonnement);
...@@ -46,15 +46,15 @@ public class AbonnementDao { ...@@ -46,15 +46,15 @@ public class AbonnementDao {
return abonnements; return abonnements;
} }
public List<Abonnement> findAbonnements(int idUtilisateur) { public List<Abonnement> findAbonnements(String utilisateurEmail) {
List<Abonnement> abonnements = new ArrayList<>(); List<Abonnement> abonnements = new ArrayList<>();
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM abonnement WHERE idUtilisateur = ?"); PreparedStatement ps = con.prepareStatement("SELECT * FROM abonnement WHERE utilisateurEmail = ?");
ps.setInt(1, idUtilisateur); ps.setString(1, utilisateurEmail);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
while (rs.next()) { while (rs.next()) {
Abonnement abonnement = new Abonnement(); Abonnement abonnement = new Abonnement();
abonnement.setIdUtilisateur(rs.getInt("idUtilisateur")); abonnement.setUtilisateurEmail(rs.getString("utilisateurEmail"));
abonnement.setIdFil(rs.getInt("idFil")); abonnement.setIdFil(rs.getInt("idFil"));
abonnement.setDateAbonnement(rs.getDate("dateAbonnement").toLocalDate()); abonnement.setDateAbonnement(rs.getDate("dateAbonnement").toLocalDate());
abonnements.add(abonnement); abonnements.add(abonnement);
......
...@@ -15,9 +15,9 @@ public class DS { ...@@ -15,9 +15,9 @@ public class DS {
} }
public Connection getConnection() { public Connection getConnection() {
String url = "jdbc:postgresql://psqlserv/but2"; String url = "jdbc:postgresql://localhost:5432/postgres";
String login = "adrienfrysonetu"; String login = "postgres";
String pwd = "moi"; String pwd = "";
Connection con = null; Connection con = null;
try { try {
con = DriverManager.getConnection(url, login, pwd); con = DriverManager.getConnection(url, login, pwd);
......
package modele; package modele;
import java.sql.Timestamp; import java.time.LocalDateTime;
public class FilDeDiscussion { public class FilDeDiscussion {
private int id; private int id;
private String nom; private String nom;
private Timestamp dateCreation; private LocalDateTime dateCreation;
private int createurId; private String createurEmail;
public FilDeDiscussion() { public FilDeDiscussion() {
} }
public FilDeDiscussion(int id, String nom, Timestamp dateCreation, int createurId) { public FilDeDiscussion(int id, String nom, LocalDateTime dateCreation, String createurEmail) {
this.id = id; this.id = id;
this.nom = nom; this.nom = nom;
this.dateCreation = dateCreation; this.dateCreation = dateCreation;
this.createurId = createurId; this.createurEmail = createurEmail;
} }
public int getId() { public int getId() {
...@@ -34,19 +34,19 @@ public class FilDeDiscussion { ...@@ -34,19 +34,19 @@ public class FilDeDiscussion {
this.nom = nom; this.nom = nom;
} }
public Timestamp getDateCreation() { public LocalDateTime getDateCreation() {
return dateCreation; return dateCreation;
} }
public void setDateCreation(Timestamp dateCreation) { public void setDateCreation(LocalDateTime dateCreation) {
this.dateCreation = dateCreation; this.dateCreation = dateCreation;
} }
public int getCreateurId() { public String getCreateurEmail() {
return createurId; return createurEmail;
} }
public void setCreateurId(int createurId) { public void setCreateurEmail(String createurEmail) {
this.createurId = createurId; this.createurEmail = createurEmail;
} }
} }
...@@ -8,18 +8,17 @@ import java.util.List; ...@@ -8,18 +8,17 @@ import java.util.List;
public class FilDeDiscussionDAO { public class FilDeDiscussionDAO {
// Méthode pour récupérer un fil de discussion par son id
public FilDeDiscussion findById(int id) { public FilDeDiscussion findById(int id) {
FilDeDiscussion f = new FilDeDiscussion(); FilDeDiscussion f = new FilDeDiscussion();
try (Connection con = DS.instance.getConnection()) { try (Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM fil_de_discussion WHERE id = ?"); PreparedStatement ps = con.prepareStatement("SELECT * FROM filDeDiscussion WHERE id = ?");
ps.setInt(1, id); ps.setInt(1, id);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
if (rs.next()) { if (rs.next()) {
f.setId(rs.getInt("id")); f.setId(rs.getInt("id"));
f.setNom(rs.getString("nom")); f.setNom(rs.getString("nom"));
f.setDateCreation(rs.getTimestamp("date_creation")); f.setDateCreation(rs.getTimestamp("dateCreation").toLocalDateTime());
f.setCreateurId(rs.getInt("createur_id")); f.setCreateurEmail(rs.getString("createurEmail"));
} else { } else {
System.out.println("Fil de discussion inexistant"); System.out.println("Fil de discussion inexistant");
} }
...@@ -29,32 +28,28 @@ public class FilDeDiscussionDAO { ...@@ -29,32 +28,28 @@ public class FilDeDiscussionDAO {
return f; return f;
} }
// Méthode pour créer un fil de discussion
public void create(FilDeDiscussion filDeDiscussion) { public void create(FilDeDiscussion filDeDiscussion) {
try (Connection con = DS.instance.getConnection()) { try (Connection con = DS.instance.getConnection()) {
PreparedStatement pstmt = con.prepareStatement("INSERT INTO fil_de_discussion (id, nom, date_creation, createur_id) VALUES (?, ?, ?, ?)"); PreparedStatement pstmt = con.prepareStatement("INSERT INTO filDeDiscussion (nom, createurEmail) VALUES (?, ?)");
pstmt.setInt(1, filDeDiscussion.getId()); pstmt.setString(1, filDeDiscussion.getNom());
pstmt.setString(2, filDeDiscussion.getNom()); pstmt.setString(2, filDeDiscussion.getCreateurEmail());
pstmt.setTimestamp(3, filDeDiscussion.getDateCreation());
pstmt.setInt(4, filDeDiscussion.getCreateurId());
pstmt.executeUpdate(); pstmt.executeUpdate();
} catch (Exception e) { } catch (Exception e) {
System.err.println(e.getMessage()); System.err.println(e.getMessage());
} }
} }
// Méthode pour récupérer tous les fils de discussion
public List<FilDeDiscussion> findAll() { public List<FilDeDiscussion> findAll() {
List<FilDeDiscussion> filsDeDiscussion = new ArrayList<>(); List<FilDeDiscussion> filsDeDiscussion = new ArrayList<>();
try (Connection con = DS.instance.getConnection()) { try (Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM fil_de_discussion"); PreparedStatement ps = con.prepareStatement("SELECT * FROM filDeDiscussion");
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
while (rs.next()) { while (rs.next()) {
FilDeDiscussion f = new FilDeDiscussion(); FilDeDiscussion f = new FilDeDiscussion();
f.setId(rs.getInt("id")); f.setId(rs.getInt("id"));
f.setNom(rs.getString("nom")); f.setNom(rs.getString("nom"));
f.setDateCreation(rs.getTimestamp("date_creation")); f.setDateCreation(rs.getTimestamp("dateCreation").toLocalDateTime());
f.setCreateurId(rs.getInt("createur_id")); f.setCreateurEmail(rs.getString("createurEmail"));
filsDeDiscussion.add(f); filsDeDiscussion.add(f);
} }
} catch (Exception e) { } catch (Exception e) {
...@@ -63,10 +58,9 @@ public class FilDeDiscussionDAO { ...@@ -63,10 +58,9 @@ public class FilDeDiscussionDAO {
return filsDeDiscussion; return filsDeDiscussion;
} }
// Méthode pour supprimer un fil de discussion
public void delete(int id) { public void delete(int id) {
try (Connection con = DS.instance.getConnection()) { try (Connection con = DS.instance.getConnection()) {
PreparedStatement pstmt = con.prepareStatement("DELETE FROM fil_de_discussion WHERE id = ?"); PreparedStatement pstmt = con.prepareStatement("DELETE FROM filDeDiscussion WHERE id = ?");
pstmt.setInt(1, id); pstmt.setInt(1, id);
pstmt.executeUpdate(); pstmt.executeUpdate();
} catch (Exception e) { } catch (Exception e) {
......
package modele; package modele;
import java.time.LocalDate; import java.time.LocalDateTime;
public class Message { public class Message {
private int id; private int id;
private String contenu; private String contenu;
private LocalDate datePublication; private LocalDateTime datePublication;
private int idFil; private int filId;
private int idAuteur; private String auteurEmail;
public Message() { public Message() {
} }
public Message(int id, String contenu, LocalDate datePublication, int idFil, int idAuteur) { public Message(int id, String contenu, LocalDateTime datePublication, int filId, String auteurEmail) {
this.id = id; this.id = id;
this.contenu = contenu; this.contenu = contenu;
this.datePublication = datePublication; this.datePublication = datePublication;
this.idFil = idFil; this.filId = filId;
this.idAuteur = idAuteur; this.auteurEmail = auteurEmail;
} }
public int getId() { public int getId() {
...@@ -36,32 +36,32 @@ public class Message { ...@@ -36,32 +36,32 @@ public class Message {
this.contenu = contenu; this.contenu = contenu;
} }
public LocalDate getDatePublication() { public LocalDateTime getDatePublication() {
return datePublication; return datePublication;
} }
public void setDatePublication(LocalDate datePublication) { public void setDatePublication(LocalDateTime datePublication) {
this.datePublication = datePublication; this.datePublication = datePublication;
} }
public int getIdFil() { public int getfilId() {
return idFil; return filId;
} }
public void setIdFil(int idFil) { public void setFilId(int filId) {
this.idFil = idFil; this.filId = filId;
} }
public int getIdAuteur() { public String getAuteurEmail() {
return idAuteur; return auteurEmail;
} }
public void setIdAuteur(int idAuteur) { public void setAuteurEmail(String auteurEmail) {
this.idAuteur = idAuteur; this.auteurEmail = auteurEmail;
} }
@Override @Override
public String toString() { public String toString() {
return "Message{" + "id=" + id + ", contenu=" + contenu + ", datePublication=" + datePublication + ", idFil=" + idFil + ", idAuteur=" + idAuteur + '}'; return "Message{" + "id=" + id + ", contenu=" + contenu + ", datePublication=" + datePublication + ", filId=" + filId + ", auteurEmail=" + auteurEmail + '}';
} }
} }
...@@ -17,9 +17,9 @@ public class MessageDao { ...@@ -17,9 +17,9 @@ public class MessageDao {
if (rs.next()) { if (rs.next()) {
message.setId(rs.getInt("id")); message.setId(rs.getInt("id"));
message.setContenu(rs.getString("contenu")); message.setContenu(rs.getString("contenu"));
message.setDatePublication(rs.getDate("datePublication").toLocalDate()); message.setDatePublication(rs.getTimestamp("datePublication").toLocalDateTime());
message.setIdFil(rs.getInt("idFil")); message.setFilId(rs.getInt("filId"));
message.setIdAuteur(rs.getInt("idAuteur")); message.setAuteurEmail(rs.getString("auteurEmail"));
} else { } else {
System.out.println("Message inexistant"); System.out.println("Message inexistant");
} }
...@@ -38,9 +38,9 @@ public class MessageDao { ...@@ -38,9 +38,9 @@ public class MessageDao {
Message message = new Message(); Message message = new Message();
message.setId(rs.getInt("id")); message.setId(rs.getInt("id"));
message.setContenu(rs.getString("contenu")); message.setContenu(rs.getString("contenu"));
message.setDatePublication(rs.getDate("datePublication").toLocalDate()); message.setDatePublication(rs.getTimestamp("datePublication").toLocalDateTime());
message.setIdFil(rs.getInt("idFil")); message.setFilId(rs.getInt("filId"));
message.setIdAuteur(rs.getInt("idAuteur")); message.setAuteurEmail(rs.getString("auteurEmail"));
messages.add(message); messages.add(message);
} }
} catch (Exception e) { } catch (Exception e) {
...@@ -52,16 +52,16 @@ public class MessageDao { ...@@ -52,16 +52,16 @@ public class MessageDao {
public List<Message> findMessages(int idFil) { public List<Message> findMessages(int idFil) {
List<Message> messages = new ArrayList<>(); List<Message> messages = new ArrayList<>();
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM message WHERE idFil = ?"); PreparedStatement ps = con.prepareStatement("SELECT * FROM message WHERE filId = ?");
ps.setInt(1, idFil); ps.setInt(1, idFil);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
while (rs.next()) { while (rs.next()) {
Message message = new Message(); Message message = new Message();
message.setId(rs.getInt("id")); message.setId(rs.getInt("id"));
message.setContenu(rs.getString("contenu")); message.setContenu(rs.getString("contenu"));
message.setDatePublication(rs.getDate("datePublication").toLocalDate()); message.setDatePublication(rs.getTimestamp("datePublication").toLocalDateTime());
message.setIdFil(rs.getInt("idFil")); message.setFilId(rs.getInt("filId"));
message.setIdAuteur(rs.getInt("idAuteur")); message.setAuteurEmail(rs.getString("auteurEmail"));
messages.add(message); messages.add(message);
} }
} catch (Exception e) { } catch (Exception e) {
......
package modele; package modele;
import java.time.LocalDate; import java.time.LocalDateTime;
public class Utilisateur { public class Utilisateur {
private int id;
private String nom; private String nom;
private String email; private String email;
private String motDePasse; // HASH private String motDePasse; // HASH
private LocalDate dateInscription; private LocalDateTime dateInscription;
public Utilisateur() { public Utilisateur() {
} }
public Utilisateur(int id, String nom, String email, String motDePasse, LocalDate dateInscription) { public Utilisateur(String nom, String email, String motDePasse, LocalDateTime dateInscription) {
this.id = id;
this.nom = nom; this.nom = nom;
this.email = email; this.email = email;
this.motDePasse = motDePasse; this.motDePasse = motDePasse;
this.dateInscription = dateInscription; this.dateInscription = dateInscription;
} }
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNom() { public String getNom() {
return nom; return nom;
} }
...@@ -52,16 +42,16 @@ public class Utilisateur { ...@@ -52,16 +42,16 @@ public class Utilisateur {
this.motDePasse = motDePasse; this.motDePasse = motDePasse;
} }
public LocalDate getDateInscription() { public LocalDateTime getDateInscription() {
return dateInscription; return dateInscription;
} }
public void setDateInscription(LocalDate dateInscription) { public void setDateInscription(LocalDateTime dateInscription) {
this.dateInscription = dateInscription; this.dateInscription = dateInscription;
} }
@Override @Override
public String toString() { public String toString() {
return "Utilisateur [dateInscription=" + dateInscription + ", email=" + email + ", id=" + id + ", nom=" + nom + "]"; return "Utilisateur [dateInscription=" + dateInscription + ", email=" + email + ", nom=" + nom + "]";
} }
} }
...@@ -6,40 +6,17 @@ import java.sql.ResultSet; ...@@ -6,40 +6,17 @@ import java.sql.ResultSet;
public class UtilisateurDao { public class UtilisateurDao {
public Utilisateur findUtilisateur(int id) { public Utilisateur findUtilisateur(String email) {
Utilisateur utilisateur = new Utilisateur(); Utilisateur utilisateur = new Utilisateur();
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM utilisateur WHERE id = ?"); PreparedStatement ps = con.prepareStatement("SELECT * FROM utilisateur WHERE email = ?");
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
utilisateur.setId(rs.getInt("id"));
utilisateur.setNom(rs.getString("nom"));
utilisateur.setEmail(rs.getString("email"));
utilisateur.setMotDePasse(rs.getString("motDePasse"));
utilisateur.setDateInscription(rs.getDate("dateInscription").toLocalDate());
} else {
System.out.println("Utilisateur inexistant");
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
return utilisateur;
}
public Utilisateur findUtilisateur(String email, String motDePasse) {
Utilisateur utilisateur = new Utilisateur();
try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("SELECT * FROM Utilisateur WHERE email = ? AND mot_de_passe = ?");
ps.setString(1, email); ps.setString(1, email);
ps.setString(2, motDePasse);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
if (rs.next()) { if (rs.next()) {
utilisateur.setId(rs.getInt("id"));
utilisateur.setNom(rs.getString("nom")); utilisateur.setNom(rs.getString("nom"));
utilisateur.setEmail(rs.getString("email")); utilisateur.setEmail(rs.getString("email"));
utilisateur.setMotDePasse(rs.getString("motDePasse")); utilisateur.setMotDePasse(rs.getString("motDePasse"));
utilisateur.setDateInscription(rs.getDate("dateInscription").toLocalDate()); utilisateur.setDateInscription(rs.getTimestamp("dateInscritpion").toLocalDateTime());
} else { } else {
System.out.println("Utilisateur inexistant"); System.out.println("Utilisateur inexistant");
} }
...@@ -49,10 +26,10 @@ public class UtilisateurDao { ...@@ -49,10 +26,10 @@ public class UtilisateurDao {
return utilisateur; return utilisateur;
} }
public void delete(int id) { public void delete(String email) {
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("DELETE FROM Utilisateur WHERE id = ?"); PreparedStatement ps = con.prepareStatement("DELETE FROM Utilisateur WHERE email = ?");
ps.setInt(1, id); ps.setString(1, email);
ps.executeUpdate(); ps.executeUpdate();
} catch (Exception e) { } catch (Exception e) {
System.out.println(e.getMessage()); System.out.println(e.getMessage());
...@@ -61,11 +38,10 @@ public class UtilisateurDao { ...@@ -61,11 +38,10 @@ public class UtilisateurDao {
public void update(Utilisateur utilisateur) { public void update(Utilisateur utilisateur) {
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("UPDATE Utilisateur SET nom = ?, email = ?, motDePasse = ? WHERE id = ?"); PreparedStatement ps = con.prepareStatement("UPDATE Utilisateur SET nom = ?, email = ?, motDePasse = ? WHERE email = ?");
ps.setString(1, utilisateur.getNom()); ps.setString(1, utilisateur.getNom());
ps.setString(2, utilisateur.getEmail()); ps.setString(2, utilisateur.getEmail());
ps.setString(3, utilisateur.getMotDePasse()); ps.setString(3, utilisateur.getMotDePasse());
ps.setInt(4, utilisateur.getId());
ps.executeUpdate(); ps.executeUpdate();
} catch (Exception e) { } catch (Exception e) {
System.out.println(e.getMessage()); System.out.println(e.getMessage());
...@@ -74,11 +50,10 @@ public class UtilisateurDao { ...@@ -74,11 +50,10 @@ public class UtilisateurDao {
public void insert(Utilisateur utilisateur) { public void insert(Utilisateur utilisateur) {
try(Connection con = DS.instance.getConnection()) { try(Connection con = DS.instance.getConnection()) {
PreparedStatement ps = con.prepareStatement("INSERT INTO Utilisateur (nom, email, mot_de_passe, date_inscription) VALUES (?, ?, MD5(?), ?)"); PreparedStatement ps = con.prepareStatement("INSERT INTO Utilisateur (nom, email, motDePasse) VALUES (?, ?, MD5(?))");
ps.setString(1, utilisateur.getNom()); ps.setString(1, utilisateur.getNom());
ps.setString(2, utilisateur.getEmail()); ps.setString(2, utilisateur.getEmail());
ps.setString(3, utilisateur.getMotDePasse()); ps.setString(3, utilisateur.getMotDePasse());
ps.setDate(4, java.sql.Date.valueOf(utilisateur.getDateInscription()));
ps.executeUpdate(); ps.executeUpdate();
} catch (Exception e) { } catch (Exception e) {
System.out.println(e.getMessage()); System.out.println(e.getMessage());
......
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
<title>Liste des Fils</title>
</head>
<body>
<h1>Créer un nouveau fil de discussion</h1>
<form action= "CreateNewFil" method="post">
<label for="nom">Nom du fil:</label>
<input type="text" id="nom" name="nom" required><br><br>
<label for="createur_id">ID du créateur:</label>
<input type="number" id="createur_id" name="createur_id"><br><br>
<input type="submit" value="Créer">
</form>
</body>
</html>
\ No newline at end of file
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<title>Liste des éléments</title>
</head>
<body>
<h1>Liste des éléments</h1>
<ul>
<%
for (int i = 0; i < 10; i++) {
%>
<li><a href="Control?action=vignette&n=<%= i %>">Vignette n°<%= i %></a></li>
<%
}
%>
</ul>
<br>
<a href="Control?action=vignette&n=0">Voir une vignette</a>
</body>
</html>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<title>Vignette ${index}</title>
</head>
<body>
<h1>Élément numéro ${index}</h1>
<p>${item}</p>
<br>
<a href="Control?action=liste">Retour à la liste</a>
</body>
</html>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="modele.Joueur" %>
<%@ page import="modele.JoueurDao" %>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="fr"> <html lang="fr">
...@@ -16,8 +13,8 @@ ...@@ -16,8 +13,8 @@
<input type="text" name="nom" id="nom"> <input type="text" name="nom" id="nom">
<label for="email">Email</label> <label for="email">Email</label>
<input type="email" name="email" id="email"> <input type="email" name="email" id="email">
<label for="mdp">Mot de passe</label> <label for="motdepasse">Mot de passe</label>
<input type="password" name="mdp" id="mdp"> <input type="password" name="motdepasse" id="motdepasse">
<input type="submit" value="Ajouter"> <input type="submit" value="Ajouter">
</form> </form>
</body> </body>
......
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Liste des Fils</title>
</head>
<body>
<h1>Créer un nouveau fil de discussion</h1>
<form action= "creationFil" method="post">
<label for="nom">Nom du fil:</label>
<input type="text" id="nom" name="nom" required><br><br>
<label for="createuremail">ID du créateur:</label>
<input type="text" id="createuremail" name="createuremail"><br><br>
<input type="submit" value="Créer">
</form>
</body>
</html>
\ No newline at end of file
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Supprimer une partie</title>
</head>
<body>
<h1>Supprimer une partie</h1>
<form action="SupprimerPartie" method="post">
<label for="pno">Numéro de partie</label>
<input type="number" name="pno" id="pno" required>
<input type="submit" value="Supprimer">
</form>
</body>
</html>
\ No newline at end of file
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="modele.Partie" %>
<%@ page import="modele.JoueurDao" %>
<%@ page import="modele.JoueurJdbcDao" %>
<%@ page import="modele.Joueur" %>
<%@ page import="java.util.List" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<%
JoueurDao jdao = new JoueurJdbcDao();
List<Joueur> joueurs = jdao.findAll();
int pno = Integer.parseInt(request.getParameter("pno"));
%>
<form action="ModifierPartie" method="post">
<input type="hidden" name="pno" value="<%= pno %>">
<label for="j1">Joueur 1</label>
<select name="j1" id="j1">
<% for(Joueur j : joueurs) { %>
<option value="<%= j.getJno() %>"><%= j.getPseudo() %></option>
<% } %>
</select>
<label for="j2">Joueur 2</label>
<select name="j2" id="j2">
<% for(Joueur j : joueurs) { %>
<option value="<%= j.getJno() %>"><%= j.getPseudo() %></option>
<% } %>
</select>
<input type="date" name="date" id="date">
<select name="statut" id="statut">
<option value="1">Non commencée</option>
<option value="2">En cours</option>
<option value="3">Terminée</option>
</select>
<input type="submit" value="Modifier">
</form>
</body>
</html>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment