Quelqu'n peut me corriger svp

youyou500 Messages postés 3 Date d'inscription lundi 14 février 2011 Statut Membre Dernière intervention 22 février 2011 - 15 févr. 2011 à 16:57
cs_kdesigner Messages postés 14 Date d'inscription dimanche 4 juillet 2010 Statut Membre Dernière intervention 30 avril 2011 - 16 févr. 2011 à 16:25
string sql = ("update client set nom ='" + textBox1.Text + "set tel ='" + textBox2.Text + " set ville ='" + textBox3.Text + "'where Nclient=" + comboBox1.SelectedItem);

2 réponses

billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
16 févr. 2011 à 10:23
Bonjour,

Pourrais-tu nous donner plus de détails: quelle est ton erreur ? que veux-tu faire ?

A première vue, il a l'air de manquer des ' et des "espaces".

Sinon, je te conseille personnellement de ne pas adopter cette méthode de codage mais plutôt de suivre ces exemples:
- sebmafate: UTILISATION DES REQUÊTES PARAMÉTRÉES AVEC ADO.NET 2.0.
- SharpMao: COMMENT FAIRE UNE REQUÊTE PARAMÉTRÉE DANS UNE BASE DE DONNÉE.

Car ton code est passible d'injection SQL:
Que se passe-t-il si je met le string suivant dans ton textBox1:
textBox1.Text = "' TRUNCATE TABLE [client] --";
Danger

Bon développement,

Billou_13

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
0
cs_kdesigner Messages postés 14 Date d'inscription dimanche 4 juillet 2010 Statut Membre Dernière intervention 30 avril 2011
16 févr. 2011 à 16:25
Bonjour,

Primo pour il te manque des "'" et tu devrais ajouter un .ToString() à ton comboBox1.SelectedItem

sinon pour ta requête pour quoi tu utilises le mot SET plusieurs fois!?

fais seulement un seul SET suivi de virgule!

et avant d'exécuter ta requête affiche ton string sql dans une messagebox.show pour voir ce que tu as et ensuite tu pourras exécuter

A+
0
Rejoignez-nous