Echappement

cs_tatanne Messages postés 2 Date d'inscription mardi 26 avril 2005 Statut Membre Dernière intervention 10 juillet 2006 - 5 juil. 2006 à 02:50
cs_tatanne Messages postés 2 Date d'inscription mardi 26 avril 2005 Statut Membre Dernière intervention 10 juillet 2006 - 10 juil. 2006 à 18:48
Salut à tous,

J'ai un petit souci. J'ai un winform qui rempli une BD MySQL. Le problème c'est que si l'utilisateur saisi un ' ou " tout fout le camp...
Quelqu'un aurait il une idée sur la facon optimale d'échapper ces caractères (et tout les autres qui pourraient flinguer mes requètes)

Merci

4 réponses

gcorbineau Messages postés 143 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 octobre 2006
5 juil. 2006 à 08:05
tu peux essayer de d'ajouter le caractere \ avant chaque ' et pour " tu fait \'\'
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
5 juil. 2006 à 09:13
mouaip... le mieux est de laisser faire l'objet DbCommand... en utilisant des paramètres.

genre : select * from maTable where monChamp = @valeur

et tu auras : dcCmd.Parameters["@valeur"].DefaultValue = "ma chaine de caractères avec des ' et des "... facile non ?";

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
10 juil. 2006 à 17:49
Salut,

+1 pour l'utilisation des requêtes paramétrées !

Avec un ? au lieu du @ pour le nom du paramètre pour MySQL :-)

/*
coq
MVP Visual C#
*/
0
cs_tatanne Messages postés 2 Date d'inscription mardi 26 avril 2005 Statut Membre Dernière intervention 10 juillet 2006
10 juil. 2006 à 18:48
Merci pour toutes ces réponses. J'aurai effectivement du utiliser les requetes parametrées mais j'ai eu la fleme de tout refaire (ce sera pour la prochaine fois ).

J'ai trouvé mon bonheur dans la fonction HttpUtility.HtmlEncode mais merci encore.

a+
0
Rejoignez-nous