Bonsoir

Afin de faciliter l'utilisation de mes application j'ai créé un bouton Configuration qui ouvre une Form où se trouvent des textBox afin de renseigner divers paramètres.

Lors du clique sur le bouton Valider, le code suivant est exécuté :

http://cjoint.com/14mi/DEpv06a0dpR.htm

http://cjoint.com/14mi/DEpv1fZuZk6.htm

J'ai un problème avec ma chaîne de connexion.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
public static string sIPServeurMySQL, sBD, sID, sMdp;
public static MySqlConnection maConnexion = new MySqlConnection("Server=" + sIPServeurMySQL + ";Database=" + sBD + ";Uid=" + sID + ";Pwd=" + sMdp + ";");
Cela devrait fonctionner avec mon code, puisque j'attribue les valeurs avec FormAdminEleve. nom de la variable

J'ai essayé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
public static string sIPServeurMySQL, sBD="bdlycee", sID="jeremy", sMdp="iris2";
public static MySqlConnection maConnexion = new MySqlConnection("Server=" + sIPServeurMySQL + ";Database=" + sBD + ";Uid=" + sID + ";Pwd=" + sMdp + ";");
et cela fonctionne alors qu'avec la première version donnée 10 lignes plus haut cela ne fonctionne pas, pourtant avec la première version les valeurs sont affectées et ça se voit lorsque je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
MessageBox.Show("Server=" + sIPServeurMySQL + ";Database=" + sBD + ";Uid=" + sID + ";Pwd=" + sMdp + ";");
avec la première version.

Directement sous le code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
FormAdminEleve.sIPServeurMySQL = textBoxIPServeurMySql.Text;
FormAdminEleve.sEmplacementImages_projet = textBoxEmplacementImages_projet.Text;
FormAdminEleve.sEmplacementHistorique = textBoxEmplacementHistorique.Text;
FormAdminEleve.sEmplacementPhotos = textBoxEmplacementPhotos.Text;
FormAdminEleve.sEmplacementPhotos_temp = textBoxEmplacementPhotosTemp.Text;
FormAdminEleve.sID = textBoxIdBD.Text;
FormAdminEleve.sMdp = textBoxMdpBD.Text;
J'ai placé une MessageBox afin de voir la chaîne de caractère, au dessus c'est en affichant directement les valeurs de mes textBox et en les insérant dans la chaîne et dessous c'est en prenant les valeurs affectées aux variables de Form1 avec le code qui se trouve 5 lignes au dessus.
Vous constatez que c'est pareil : http://cjoint.com/14mi/DEqkITmyJPp.htm
(j'ai rajouté les tirets afin de séparer les 2 façons de récupérer les valeurs)

Le code de la MessageBox :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
MessageBox.Show("Server=" + textBoxIPServeurMySql.Text + ";Database=" + textBoxNomBD.Text + ";Uid=" + textBoxIdBD.Text + ";Pwd=" + textBoxMdpBD.Text + ";" + "---------  Server=" + FormAdminEleve.sIPServeurMySQL + ";Database=" + FormAdminEleve.sBD + ";Uid=" + FormAdminEleve.sID + ";Pwd=" + FormAdminEleve.sMdp + ";");
J'ai alors enlevé le try catch dans une requête afin de voir ce que ça donne et ça m'a mis :

Authentication to host '' for user '' using method 'mysql_native_password' failed with message: Access denied for user ''@'fe80::9934:7035:49b2:829e%11' (using password: NO)

Comment est-ce possible alors que les valeurs affectées aux variables sont les bonnes ?


Pouvez vous m'aider à trouver mon erreur, j'ai déjà cherché plus d'une heure et j'ai tout essayé sans succès.

Merci beaucoup