Enregistrements des apostrophes [Résolu]

Signaler
Messages postés
12
Date d'inscription
mercredi 17 juillet 2013
Statut
Membre
Dernière intervention
9 octobre 2013
-
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
-
Bonjour,
depuis mon appli java, je tente d'enregistrer des apostrophes en vain dans une bdd mysql.
j'ai lu qu'il faut utiliser la fonction mysql_real_escape_string.

Je ne sais pas comment l'utiliser et je vous prie de m'aider.
est-ce la seule fonction pour echapper les apostrophes?
NB: netbeans, java

3 réponses

Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
294
Salut,

Normalement, tu peux les échapper avec un \', tu peux donc utiliser un replaceAll("'", "\\'") sur la chaîne que tu veux insérer.

Et les preparedStatement résolvent ce problème me semble t'il...
Messages postés
12
Date d'inscription
mercredi 17 juillet 2013
Statut
Membre
Dernière intervention
9 octobre 2013

Connexion2 con = new Connexion2();
        con.connectdb();
        if(con.connect!=null){
           
            try{
                String ins=" insert into employe values ('0', '"+matricule.getText()+"','"+tache.getText()+"')"
                pst=con.connect.prepareStatement(ins);
                pst.executeUpdate();
            }catch (Exception e){
                JOptionPane.showMessageDialog(this, e.getMessage());
            }

S'il te plait, a quel niveau utiliser ce replaceAll pour inserer dans la bdd?
J'ai fait qlq gymnastiques sans succès!!
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
294
Connexion2 con = new Connexion2();
        con.connectdb();
        if(con.connect!=null){
           
            try{
                String ins=" insert into employe values ('0', '"+matricule.getText().replaceAll("'", "\\'")+"','"+tache.getText().replaceAll("'", "\\'")+"')"
                pst=con.connect.prepareStatement(ins);
                pst.executeUpdate();
            }catch (Exception e){
                JOptionPane.showMessageDialog(this, e.getMessage());

}