[déplacé VB.NET -> C#] connection mysql et .net

diamentelle Messages postés 14 Date d'inscription mardi 12 août 2008 Statut Membre Dernière intervention 16 mars 2009 - 31 déc. 2008 à 12:23
diamentelle Messages postés 14 Date d'inscription mardi 12 août 2008 Statut Membre Dernière intervention 16 mars 2009 - 31 déc. 2008 à 13:51
bonjour a tous,
dans le cadre de mon projet de fin d'etudes de suis entrain de creer une application en .net(visual studio 2005)avec le language c# et une base de donnees mysql (wamp) le probleme c est que j arrive pas a etablir la connection j ai passee toute la journee d'hier a essayer de regler le probleme mais en vain.
voici mon code:

private
void button3_Click(
object sender,
EventArgs e){
if (login.Text "" && mp.Text
"")
MessageBox.Show(
"Attention vous n'avez pas saisi de caractère!");

if (login.Text !=
"" && mp.Text!=
""){

String

f=
"Driver={MySQL ODBC 3.51 Driver};Server=" & localhost &
";Port=" & 3306 &
";Database=facturation;Uid=root;password="";

// Le chemin de la connectionOdbcConnection

maConnection=
new
OdbcConnection(f);

try{

maConnection.Open();

}

catch{

MessageBox.Show(
"Identifiez-vous");

return;}

String g =
"select * from authentification" ;

OdbcCommand macommande =
new
OdbcCommand(g, maConnection);

OdbcDataReader monReader = macommande.ExecuteReader();monReader.Read();
if (login.Text monReader.GetString(0).ToString() && mp.Text monReader.GetString(1).ToString()){

Form1 maforme1=
new
Form1();maforme1.Show();

this.Hide();

}

else{

MessageBox.Show(
"Login ou Mot de passe incorrect");login.Text=

"";mp.Text=

"";}

 

 

}

}

merci a tous.

4 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
31 déc. 2008 à 13:20
Salut,

Ca pourrait être bien de donner des détails sur les erreurs qu'affiche le compilateur.

Le problème doit venir de la ligne définissant "f", vu qu'on ne concatène pas de chaînes de caractères avec l'opérateur "&" mais avec l'opérateur "+" (bien que là je ne vois pas trop pourquoi il y a besoin de concaténer).
Pour faire plus lisible on peut utiliser String.Format.
Pour faire plus propre on utilisera le fichier de configuration afin de ne pas recompiler l'application si la source de données change.

/*
coq
MVP Visual C#
CoqBlog
*/
0
diamentelle Messages postés 14 Date d'inscription mardi 12 août 2008 Statut Membre Dernière intervention 16 mars 2009
31 déc. 2008 à 13:26
je te remercie enormement,


voici le message d erreurs


----- Début de la génération : Projet : facturation, Configuration : Debug Any CPU ------
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Deployment.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /debug+ /debug:full /optimize- /out:obj\Debug\facturation.exe /resource:obj\Debug\facturation.Form1.resources /resource:obj\Debug\facturation.Properties.Resources.resources /target:winexe DataSet1.Designer.cs Form1.cs Form1.Designer.cs Program.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs
C:\Documents and Settings\Administrateur\Mes documents\Visual Studio 2005\Projects\facturation\facturation\Form1.cs(44,126): erreur CS1010: Saut de ligne dans la constante


Compilation terminée -- 1 erreurs, 0 avertissements
======== Génération : 0 a réussi ou est à jour, 1 a échoué, 0 a été ignoré ==========
je te remercie encore une fois,j ai vraiment besoin d aide pour avancer je bloque depuis lundi
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
31 déc. 2008 à 13:43
http://msdn.microsoft.com/fr-fr/library/8ychdtb8.aspx

C'est ce que je disais.

Donc le code : 
String f="Driver={MySQL ODBC 3.51 Driver};Server=" & localhost & ";Port=" & 3306 & ";Database=facturation;Uid=root;password="";

Est à remplacer par
String f="Driver={MySQL ODBC 3.51 Driver};Server=localhost;Port=3306;Database=facturation;Uid=root;password=";

ou (si localhost est censé être une variable) :
String f= String.Format("Driver={MySQL ODBC 3.51 Driver};Server={0};Port=3306;Database=facturation;Uid=root;password=", localhost);

PS : un travail de sécurisation de l'instance de MySQL semble aussi nécessaire, utiliser un compte admin pour une application est suicidaire, avec un mot de passe vierge encore plus....

/*
coq
MVP Visual C#
CoqBlog
*/
0
diamentelle Messages postés 14 Date d'inscription mardi 12 août 2008 Statut Membre Dernière intervention 16 mars 2009
31 déc. 2008 à 13:51
merciiiiii beaucoup j ai testée et ça marche
bonne année 2009 meilleurs
0
Rejoignez-nous