Impossible de se connecter a BDD
This commit is contained in:
parent
42ae14a012
commit
22143615ba
1 changed files with 124 additions and 26 deletions
|
@ -176,17 +176,38 @@ public class DataBase {
|
|||
|
||||
|
||||
/*
|
||||
* Methode permettant de mettre a jour le pseudo d'un utilisateur en fonction de son ID dans la base de donnee
|
||||
* @param ID Id de l'utilisateur qui vient de se connecter pour la premiere fois
|
||||
* Methode permettant d'ajouter un utilisateur dans la base de donnée si celui-ci n'existe pas deja
|
||||
* @param ID Id de l'utilisateur que l'on veut rajouter
|
||||
* @param Pseudo pseudo actuelle de l'utilisateur
|
||||
*/
|
||||
public void ajoutUtilisateurs(String ID , String Pseudo ) {
|
||||
// Verification que l'utilisateur n'existe pas
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
String existe= "SELECT Pseudo FROM Customers WHERE ID = " + ID;
|
||||
Statement stmt = null;
|
||||
ResultSet rs = null ;
|
||||
try {
|
||||
stmt = this.connection.createStatement();
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
try {
|
||||
rs = stmt.executeQuery(existe);
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
String P = "" ;
|
||||
try {
|
||||
P = rs.getString("Pseudo");
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
if( !P.equals("") ) {
|
||||
// L'utilisateur existe deja
|
||||
if (!P.equals(Pseudo)){
|
||||
this.majPseudo(ID,Pseudo); // On met a jour le nouveau pseudo
|
||||
}
|
||||
}
|
||||
else {
|
||||
String requete = "INSERT INTO `Utilisateurs` (`ID`, `Pseudo`, `Actif`) VALUES ( ? , ? , '1')";
|
||||
PreparedStatement Ps = null;
|
||||
//Statement est utilisé pour envoyer une requete SQL à la base de donnee
|
||||
|
@ -208,6 +229,7 @@ public class DataBase {
|
|||
System.out.println(" Echec executeUpdate ");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Methode permettant de mettre a jour les utilisateurs actuellement actif
|
||||
|
@ -238,14 +260,90 @@ public class DataBase {
|
|||
}
|
||||
|
||||
/*
|
||||
* Methode permettant de recuperer les 20 derniers messages envoyés entre 2 utilisateurs
|
||||
* Methode permettant de recuperer les N derniers messages envoyés entre 2 utilisateurs
|
||||
* @param ID Utilisateur associé a ChatApp
|
||||
* @param destinataire Celui avec qui correspond ID
|
||||
* @return Les 20 derniers Messages
|
||||
* @return Les N derniers Messages
|
||||
*/
|
||||
public String recup20Msg(String ID, String IDdestinataire) {
|
||||
public String recupNMsg(String ID, String IDdestinataire, int N) {
|
||||
String Msg = "" ;
|
||||
return Msg ;
|
||||
String petit;
|
||||
String grand;
|
||||
int comparaison = ID.compareTo(IDdestinataire);
|
||||
if (comparaison < 0) {
|
||||
petit = ID;
|
||||
grand = IDdestinataire;
|
||||
}
|
||||
else {
|
||||
petit = ID;
|
||||
grand = IDdestinataire ;
|
||||
}
|
||||
String nomTable = "Chat_" + petit + "_" + grand ;
|
||||
String requete= "SELECT * FROM nomTable";
|
||||
Statement stmt = null;
|
||||
ResultSet rs = null ;
|
||||
try {
|
||||
stmt = this.connection.createStatement();
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
try {
|
||||
rs = stmt.executeQuery(requete);
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
|
||||
for(int i = 0 ; i < N; i++){
|
||||
try {
|
||||
if( rs.next()){
|
||||
String IDSource = rs.getString("Source");
|
||||
String Envoi = rs.getTimestamp("Envoi").toString();
|
||||
String Message = rs.getString("Message");
|
||||
if (IDSource.equals(ID)){
|
||||
Msg += ( "Moi (" + Envoi + ") : " + Message ) ;
|
||||
}
|
||||
else {
|
||||
String PseudoSource = getPseudo(IDSource) ;
|
||||
Msg += ( PseudoSource + "(" + Envoi + ") : " + Message );
|
||||
}
|
||||
|
||||
}
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
return Msg ;
|
||||
}
|
||||
|
||||
/*
|
||||
* Methode permettant de recuperer le pseudo actuel d'un utilisateur en fonction de son ID
|
||||
* @param ID Id de l'utilsateur dont on veut connaitre le pseudo
|
||||
* @return Pseudo
|
||||
*/
|
||||
private String getPseudo(String idSource) {
|
||||
String Pseudo = "" ;
|
||||
String requete= "SELECT * FROM `Utilisateurs` WHERE ID = " + idSource;
|
||||
Statement stmt = null;
|
||||
ResultSet rs = null ;
|
||||
try {
|
||||
stmt = this.connection.createStatement();
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
try {
|
||||
rs = stmt.executeQuery(requete);
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
try {
|
||||
if (! rs.getString("Pseudo").equals(null) ){
|
||||
Pseudo = rs.getString("Pseudo") ;
|
||||
}
|
||||
} catch (SQLException throwables) {
|
||||
throwables.printStackTrace();
|
||||
}
|
||||
return Pseudo ;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue