[C# Episode 4] Requête MySQL / Gestion + Connexion

  • Auteur de la discussion Auteur de la discussion delete221380
  • Créé le Créé le
Statut
N'est pas ouverte pour d'autres réponses.
Merci pour ce tuto, je vais suivre tout tes épisodes maintenant :D
Y'en a d'autres qui ont plus d'exclusivité en zone premium si jamais tu achète le premium tu pourra les voir ;) .
 
Monster tuto :o merci du partage sa a du te prendre du temps pour faire tout écrire
 
T'es caller toi :O.o:
 
Je suis chez hostinger, vous savez pas c'est quoi le serveur ?
 
C'est
Yop all c'est DEVR0, aujourd'hui on ce retrouve pour l'épisode 4 de ma série de tuto consacré a la programmation.
Dans cet épisode nous allons voir comment manager votre base de données MySQL (création de compte utilisateurs, suppression, connexion en tant qu'utilisateur) depuis une WindowsForm :)

Mon résultat final ressemble à ceci :

1397395673-bdd.png


L'inventaire de ce qu'il vous faudra :
  • Visual Studio ou Visual C#.
  • Les DLL MySQL.Data & MySQL.Web.>
  • De la patience.

Créations de votre projets, références, ajout des composants :

Faite comme a votre habitude, créez un nouveau projet C# Windows Form, ajoutez le nom que vous voulez
Ajouter les références télécharger plus tôt.
Déclaré ensuite leurs utilisations
Code:
using MySql.Data.MySqlClient;
using MySql.Web.Common;

Pour ce qui est de l'ajout des composant j'ai choisit d'afficher les bases de données dans une comboBox et le nom des table (table de chaque BDD) dans une listView

Si vous avez créer plusieurs base de données c'est plus simple de se servir d'une comboBox ;)
Cette partie sert juste a afficher les bases de données présentes et le nom de chaque table, vous ne pouvez en aucun cas voir le contenue de la table, on vérra comment faire juste après

Commençons par faire une requête de connexion a la base de données :

Ajoutez le nombres de textBox qu'il vous faut, en générale une connexion a une base de données requiert : un identifiant, un mot de passe, le serveur; et la base de données en elle même

Une fois vos composants ajouter, créer une instance dans public partial class :
comme ceci
Code:
private MySqlConnection conn;

Ensuite rendez-vous dans votre bouton "Connexion", ou ce qui vous sert a valider vos identifiants pour vous connecté

Code:
 if (this.conn != null)
            {
                this.conn.Close();
            }
            object[] text = new object[] { this.textBoxServeur.Text, this.textBoxUser1.Text, this.textBoxPass.Text, this.textBoxBDD.Text };
            string connStr = string.Format("server={0};uid={1};pwd={2};database={3}", text);
            try
            {
                this.conn = new MySqlConnection(connStr);
                this.conn.Open();
                this.GetDatabases();
  
                MessageBox.Show(string.Concat("Connexion établit a l'hote distant : ", this.textBoxUser.Text, " réussit"), "Succès", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            catch (MySqlException mySqlException)
            {
                MySqlException ex = mySqlException;
                MessageBox.Show(string.Concat("Error connecting to the server: ", ex.Message));
            }

Vous pouvez voir que j'ai un morceaux de code qui indiquera une erreur, c'est une appel a la fonction GetDataBases. cette fonction servira a obtenir les bases de données ainsi que le nom des table
Vous devez donc créer cette fonction

Code de la fonction GetDataBase (relié a la connexion) qui donnera les info des BDD et nom des tables :

Code:
 private void GetDatabases()
        {
            MySqlDataReader reader = null;
            MySqlCommand cmd = new MySqlCommand("SHOW DATABASES", this.conn);
            try
            {
                try
                {
                    reader = cmd.ExecuteReader();
                    this.databaseList.Items.Clear();//Ceci est la comboBox qui affiche les bases de données
                    while (reader.Read())
                    {
                        this.databaseList.Items.Add(reader.GetString(0)); //Ceci est la comboBox qui affiche les bases de données
                    }
                }
                catch (MySqlException mySqlException)
                {
                    MySqlException ex = mySqlException;
                    MessageBox.Show(string.Concat("Failed to populate database list: ", ex.Message));
                }
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
            }
        }

1397397370-code-db.png

Si tout c'est bien passer vous une fois connecté vous devez avoir des informations dans la ComboBox comme ceci

1397397510-db-tuto.png

Pour pouvroir obtenir les tables présente dans les BDD vous devez cliquer sur votre comboBox, allez dans les évenement et chercher double cliquer sur l'évenement SelectedIndexChanged

Une fois dans le code vous avez juste a entré la fonction suivante :
Code:
 MySqlDataReader reader = null;
            this.conn.ChangeDatabase(this.databaseList.SelectedItem.ToString()); //La comboBox qui obtient les base de donné
            MySqlCommand cmd = new MySqlCommand("SHOW TABLES", this.conn);
            try
            {
                try
                {
                    reader = cmd.ExecuteReader();
                    this.tables.Items.Clear();
                    while (reader.Read())
                    {
                        this.tables.Items.Add(reader.GetString(0));//Ceci est la ListView présenté
                   
                    }
                }
                catch (MySqlException mySqlException)
                {
                    MySqlException ex = mySqlException;
                    MessageBox.Show(string.Concat("Erreur lors du chargement des tables \nMySQl Renvoie ceci : ", ex.Message));
                }
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
            }

Si tout a bien fonctionne vous devriez avoir quelques choses similaire a ceci :

1397397983-bdd-3.png

Si vous n'avez pas le même affichage que moi au niveau de la listView > Rendez vous dans les propriété de la litView > View vous mettez sur details ou list (de base c'est sur largeIcon)


Obtenir les données d'une table comme une table utilisateurs (par exemple) :

Cette partie va être très brève pour la simple et bonne raison que quasiment tout est a modifié par vous même, puisque c'est votre base de données avec vos tables et vos colones

Pour ma part j'ai créer un bouton pour obtenir les données d'une table précises, je veut afficher les données dans une autres listView

Nous devons également redéclaré une instance puisque l'autre connexion est toujours active, toujours pas public patial class
Code:
private MySqlConnection ***;

Code:
this.listView2.Items.Clear();//List View pour obtenir les utilisateurs
            this.listView2.BeginUpdate();//On commence a l'actualisé
            this.listView2.View = View.Details;//On lui assigne la propriété view details
            string sql = "select * from User";//user est le nom de la table souhaité
            object[] text = new object[] { this.textBoxServer.Text, this.textBoxUser.Text, this.textBoxPass.Text, this.textBoxBDD.Text };
            this.*** = new MySqlConnection(string.Format("server={0};uid={1};pwd={2};database={3}", text));
            this.***.Open();
            DataTable dt = new DataTable();
            (new MySqlDataAdapter(sql, this.***)).Fill(dt);
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow dr = dt.Rows[i];
                ListViewItem listitem = new ListViewItem(dr["Username"].ToString()); //ce sont les nom de vos colone
                listitem.SubItems.Add(dr["Password"].ToString());
                listitem.SubItems.Add(dr["HWID"].ToString());
                listitem.SubItems.Add(dr["MAC"].ToString());
                listitem.SubItems.Add(dr["Contact"].ToString());
                listitem.SubItems.Add(dr["Buy"].ToString());
                this.listView2.Items.Add(listitem);
            }
            this.***.Close();//On ferme la connexion
            this.listView2.EndUpdate();//On arrete d'acutalisé



Le nom des colone doit être identiques a celle de votre phpMyAdmin
Comme ceci : Si vous regarder bien dans le code on retrouve les meme nom que sur phpMyAdmin (Username, Passowr, HWID, Mac, Contact, Buy)

PhpMyAdmin
1397401537-phpmyadmin.png

Comment ajouter un utilisateurs depuis mon logiciel ?

Pour ce faire vous devez ajouter de quoi remplir un formulaire, comme si vous rajouter sur phpMyAdmin, il faudra donc remèttre les même champs que ceux de votre phpMyAdmin
Dans mon cas je doit ajouter ceci : (ce qui est égale a mes colones)

1397399145-add-user.png

Une fois ceci fait, double cliquer sur votre bouton Ajouter utilisateurs et inséré le code suivant :
On refait encore une requête de connexion MySQL
Code:
            try
            {
                MySqlCommand cmd = new MySqlCommand();
                object[] text = new object[] { this.textBoxServer.Text, this.textBoxUser.Text, this.textBoxPass.Text, this.textBoxBDD.Text };
                this.*** = new MySqlConnection(string.Format("server={0};uid={1};pwd={2};database={3}", text));
                string[] strArrays = new string[] { "INSERT INTO `freeh_db_65139`.`User` (`Username`, `Password`, `HWID`, `MAC`, `Contact`, `Buy`) VALUES ('", textBoxUserName.Text, "', '", this.textBoxPassword.Text, "', '", this.textBoxHWID.Text, "', '", this.textBoxMAC.Text, "', '", this.textBoxContact.Text, "', '", this.textBoxBuy.Text, "');" };

                cmd.CommandText = string.Concat(strArrays);
                cmd.CommandType = CommandType.Text;
                cmd.Connection = this.***;
                this.***.Open();
                cmd.ExecuteReader();
                this.***.Close();
                MessageBox.Show("Compte créer avec succès", "Succès", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            catch (MySqlException mySqlException)
            {
                MySqlException ex = mySqlException;
                MessageBox.Show(string.Concat("Erreur lors de la création du compte\n MySQL renvoie l'erreur : ", ex.Message), "Succès", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }


Attention cette ligne est très importante :

Code:
                string[] strArrays = new string[] { "INSERT INTO `freeh_db_65139`.`User` (`Username`, `Password`, `HWID`, `MAC`, `Contact`, `Buy`) VALUES ('", textBoxUserName.Text, "', '", this.textBoxPassword.Text, "', '", this.textBoxHWID.Text, "', '", this.textBoxMAC.Text, "', '", this.textBoxContact.Text, "', '", this.textBoxBuy.Text, "');" };

INSERT INTO 'base de donnée'.'Votre table souhaité'
pensé aussi a bien remplacer par les même nom de colones !


Comment supprimer un utilisateurs depuis mon logiciel?

C'est identique a la partie précédente pour ajouter un utilisateurs mais vous remplacer juste la commande MySQL
Juste cette partie change
Code:
 string[] strArrays = new string[] { "DELETE FROM `freeh_db_65139`.`User` WHERE `User`.`Username` = '", this.textBoxUser.Text, "' AND `User`.`Password` = '", this.textBoxPass.Text, "' AND `User`.`HWID` = '", this.textBoxHWID.Text, "' AND `User`.`MAC` = '", this.textBoxMAC.Text, "' AND `User`.`Contact` = '", this.textBoxContact.Text, "' AND `User`.`Buy` = '", this.textBoxBuy.Text, "' LIMIT 1;);" };

DELETE FROM `base de donnée`.`la table`

Si vous remplacer bien par vos textBox et vos valeur il n'y aura aucun problème ;)


Faire une connexion depuis une autre Form ?

Ce système vous servira a mèttre un panel de connexion sur votre logiciel pour que seul les utilisateurs enregistré peuvent y accédé pour ce faire nous allons utilisé la fonction COUNT

Pour ce faire créer simplement une Form avec 2 textBox, user et Pass et un bouton connexion

Dans le code de votre bouton vous y ajouter simplement ceci :


Code:
  string cmdStr = "SELECT COUNT(*) FROM `base de donnée`.`Table` WHERE Username = '" + textBoxUser.Text + "' AND Password = '" + textBoxPass.Text + "'";
            string connStr = String.Format("server={0};uid={1};pwd={2};database={3}",
               "server", "user", "pass", "base de donné");
            *** = new MySqlConnection(connStr);
            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                MySqlCommand cmd = new MySqlCommand(cmdStr, conn);
                conn.Open();
                MySqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    int count = reader.GetInt32(o);
                    if (count == 0)
                    {
                        MessageBox.Show("Connexion impossible, Raison possible\n\n- Ce compte n'existe pas\n- Les identifiants saisies sonts incorrected\n- Votre Adresse MAC ne correspond pas\n- Votre HWID ne correspond pas", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
               
                    }
                    else if (count == 1)
                    {
                        MessageBox.Show("Connextion en tant que, " + textBoxUser.Text + " réussit", "Succès", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        ;
}


Ce système est bien mais pour vous connecté vous devez donner les informations de sécurité de la BDD , je vous conseille donc de bien protégé votre tool pour ne pas vous faire voler votre base de donnée
Préféré un système de connexion avec une API reste encore une des meilleurs solutions.


/!\ merci de ne pas copier/coller sans crédits /!\


Série de tuto :

Episode précédent : Episode 3 clique ici
Episode suivant : En consruction​

C'est payant pour faire un db ?
 
Help me que faire ?
 
ou me donner des screen ;) STP
 
Bonjour je suis un tous nouveau codeur et j'ai besoin d'aide pour cree un liste view etc..... help me plz :'(
 
GG ! <3
 
Yop all c'est DEVR0, aujourd'hui on ce retrouve pour l'épisode 4 de ma série de tuto consacré a la programmation.
Dans cet épisode nous allons voir comment manager votre base de données MySQL (création de compte utilisateurs, suppression, connexion en tant qu'utilisateur) depuis une WindowsForm :)

Mon résultat final ressemble à ceci :

1397395673-bdd.png


L'inventaire de ce qu'il vous faudra :
  • Visual Studio ou Visual C#.
  • Les DLL MySQL.Data & MySQL.Web.>
  • De la patience.

Créations de votre projets, références, ajout des composants :

Faite comme a votre habitude, créez un nouveau projet C# Windows Form, ajoutez le nom que vous voulez
Ajouter les références télécharger plus tôt.
Déclaré ensuite leurs utilisations
Code:
using MySql.Data.MySqlClient;
using MySql.Web.Common;

Pour ce qui est de l'ajout des composant j'ai choisit d'afficher les bases de données dans une comboBox et le nom des table (table de chaque BDD) dans une listView

Si vous avez créer plusieurs base de données c'est plus simple de se servir d'une comboBox ;)
Cette partie sert juste a afficher les bases de données présentes et le nom de chaque table, vous ne pouvez en aucun cas voir le contenue de la table, on vérra comment faire juste après

Commençons par faire une requête de connexion a la base de données :

Ajoutez le nombres de textBox qu'il vous faut, en générale une connexion a une base de données requiert : un identifiant, un mot de passe, le serveur; et la base de données en elle même

Une fois vos composants ajouter, créer une instance dans public partial class :
comme ceci
Code:
private MySqlConnection conn;

Ensuite rendez-vous dans votre bouton "Connexion", ou ce qui vous sert a valider vos identifiants pour vous connecté

Code:
 if (this.conn != null)
            {
                this.conn.Close();
            }
            object[] text = new object[] { this.textBoxServeur.Text, this.textBoxUser1.Text, this.textBoxPass.Text, this.textBoxBDD.Text };
            string connStr = string.Format("server={0};uid={1};pwd={2};database={3}", text);
            try
            {
                this.conn = new MySqlConnection(connStr);
                this.conn.Open();
                this.GetDatabases();
 
                MessageBox.Show(string.Concat("Connexion établit a l'hote distant : ", this.textBoxUser.Text, " réussit"), "Succès", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            catch (MySqlException mySqlException)
            {
                MySqlException ex = mySqlException;
                MessageBox.Show(string.Concat("Error connecting to the server: ", ex.Message));
            }

Vous pouvez voir que j'ai un morceaux de code qui indiquera une erreur, c'est une appel a la fonction GetDataBases. cette fonction servira a obtenir les bases de données ainsi que le nom des table
Vous devez donc créer cette fonction

Code de la fonction GetDataBase (relié a la connexion) qui donnera les info des BDD et nom des tables :

Code:
 private void GetDatabases()
        {
            MySqlDataReader reader = null;
            MySqlCommand cmd = new MySqlCommand("SHOW DATABASES", this.conn);
            try
            {
                try
                {
                    reader = cmd.ExecuteReader();
                    this.databaseList.Items.Clear();//Ceci est la comboBox qui affiche les bases de données
                    while (reader.Read())
                    {
                        this.databaseList.Items.Add(reader.GetString(0)); //Ceci est la comboBox qui affiche les bases de données
                    }
                }
                catch (MySqlException mySqlException)
                {
                    MySqlException ex = mySqlException;
                    MessageBox.Show(string.Concat("Failed to populate database list: ", ex.Message));
                }
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
            }
        }

1397397370-code-db.png

Si tout c'est bien passer vous une fois connecté vous devez avoir des informations dans la ComboBox comme ceci

1397397510-db-tuto.png

Pour pouvroir obtenir les tables présente dans les BDD vous devez cliquer sur votre comboBox, allez dans les évenement et chercher double cliquer sur l'évenement SelectedIndexChanged

Une fois dans le code vous avez juste a entré la fonction suivante :
Code:
 MySqlDataReader reader = null;
            this.conn.ChangeDatabase(this.databaseList.SelectedItem.ToString()); //La comboBox qui obtient les base de donné
            MySqlCommand cmd = new MySqlCommand("SHOW TABLES", this.conn);
            try
            {
                try
                {
                    reader = cmd.ExecuteReader();
                    this.tables.Items.Clear();
                    while (reader.Read())
                    {
                        this.tables.Items.Add(reader.GetString(0));//Ceci est la ListView présenté
                  
                    }
                }
                catch (MySqlException mySqlException)
                {
                    MySqlException ex = mySqlException;
                    MessageBox.Show(string.Concat("Erreur lors du chargement des tables \nMySQl Renvoie ceci : ", ex.Message));
                }
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
            }

Si tout a bien fonctionne vous devriez avoir quelques choses similaire a ceci :

1397397983-bdd-3.png

Si vous n'avez pas le même affichage que moi au niveau de la listView > Rendez vous dans les propriété de la litView > View vous mettez sur details ou list (de base c'est sur largeIcon)


Obtenir les données d'une table comme une table utilisateurs (par exemple) :

Cette partie va être très brève pour la simple et bonne raison que quasiment tout est a modifié par vous même, puisque c'est votre base de données avec vos tables et vos colones

Pour ma part j'ai créer un bouton pour obtenir les données d'une table précises, je veut afficher les données dans une autres listView

Nous devons également redéclaré une instance puisque l'autre connexion est toujours active, toujours pas public patial class
Code:
private MySqlConnection ***;

Code:
this.listView2.Items.Clear();//List View pour obtenir les utilisateurs
            this.listView2.BeginUpdate();//On commence a l'actualisé
            this.listView2.View = View.Details;//On lui assigne la propriété view details
            string sql = "select * from User";//user est le nom de la table souhaité
            object[] text = new object[] { this.textBoxServer.Text, this.textBoxUser.Text, this.textBoxPass.Text, this.textBoxBDD.Text };
            this.*** = new MySqlConnection(string.Format("server={0};uid={1};pwd={2};database={3}", text));
            this.***.Open();
            DataTable dt = new DataTable();
            (new MySqlDataAdapter(sql, this.***)).Fill(dt);
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow dr = dt.Rows[i];
                ListViewItem listitem = new ListViewItem(dr["Username"].ToString()); //ce sont les nom de vos colone
                listitem.SubItems.Add(dr["Password"].ToString());
                listitem.SubItems.Add(dr["HWID"].ToString());
                listitem.SubItems.Add(dr["MAC"].ToString());
                listitem.SubItems.Add(dr["Contact"].ToString());
                listitem.SubItems.Add(dr["Buy"].ToString());
                this.listView2.Items.Add(listitem);
            }
            this.***.Close();//On ferme la connexion
            this.listView2.EndUpdate();//On arrete d'acutalisé



Le nom des colone doit être identiques a celle de votre phpMyAdmin
Comme ceci : Si vous regarder bien dans le code on retrouve les meme nom que sur phpMyAdmin (Username, Passowr, HWID, Mac, Contact, Buy)

PhpMyAdmin
1397401537-phpmyadmin.png

Comment ajouter un utilisateurs depuis mon logiciel ?

Pour ce faire vous devez ajouter de quoi remplir un formulaire, comme si vous rajouter sur phpMyAdmin, il faudra donc remèttre les même champs que ceux de votre phpMyAdmin
Dans mon cas je doit ajouter ceci : (ce qui est égale a mes colones)

1397399145-add-user.png

Une fois ceci fait, double cliquer sur votre bouton Ajouter utilisateurs et inséré le code suivant :
On refait encore une requête de connexion MySQL
Code:
            try
            {
                MySqlCommand cmd = new MySqlCommand();
                object[] text = new object[] { this.textBoxServer.Text, this.textBoxUser.Text, this.textBoxPass.Text, this.textBoxBDD.Text };
                this.*** = new MySqlConnection(string.Format("server={0};uid={1};pwd={2};database={3}", text));
                string[] strArrays = new string[] { "INSERT INTO `freeh_db_65139`.`User` (`Username`, `Password`, `HWID`, `MAC`, `Contact`, `Buy`) VALUES ('", textBoxUserName.Text, "', '", this.textBoxPassword.Text, "', '", this.textBoxHWID.Text, "', '", this.textBoxMAC.Text, "', '", this.textBoxContact.Text, "', '", this.textBoxBuy.Text, "');" };

                cmd.CommandText = string.Concat(strArrays);
                cmd.CommandType = CommandType.Text;
                cmd.Connection = this.***;
                this.***.Open();
                cmd.ExecuteReader();
                this.***.Close();
                MessageBox.Show("Compte créer avec succès", "Succès", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            catch (MySqlException mySqlException)
            {
                MySqlException ex = mySqlException;
                MessageBox.Show(string.Concat("Erreur lors de la création du compte\n MySQL renvoie l'erreur : ", ex.Message), "Succès", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }


Attention cette ligne est très importante :

Code:
                string[] strArrays = new string[] { "INSERT INTO `freeh_db_65139`.`User` (`Username`, `Password`, `HWID`, `MAC`, `Contact`, `Buy`) VALUES ('", textBoxUserName.Text, "', '", this.textBoxPassword.Text, "', '", this.textBoxHWID.Text, "', '", this.textBoxMAC.Text, "', '", this.textBoxContact.Text, "', '", this.textBoxBuy.Text, "');" };

INSERT INTO 'base de donnée'.'Votre table souhaité'
pensé aussi a bien remplacer par les même nom de colones !


Comment supprimer un utilisateurs depuis mon logiciel?

C'est identique a la partie précédente pour ajouter un utilisateurs mais vous remplacer juste la commande MySQL
Juste cette partie change
Code:
 string[] strArrays = new string[] { "DELETE FROM `freeh_db_65139`.`User` WHERE `User`.`Username` = '", this.textBoxUser.Text, "' AND `User`.`Password` = '", this.textBoxPass.Text, "' AND `User`.`HWID` = '", this.textBoxHWID.Text, "' AND `User`.`MAC` = '", this.textBoxMAC.Text, "' AND `User`.`Contact` = '", this.textBoxContact.Text, "' AND `User`.`Buy` = '", this.textBoxBuy.Text, "' LIMIT 1;);" };

DELETE FROM `base de donnée`.`la table`

Si vous remplacer bien par vos textBox et vos valeur il n'y aura aucun problème ;)


Faire une connexion depuis une autre Form ?

Ce système vous servira a mèttre un panel de connexion sur votre logiciel pour que seul les utilisateurs enregistré peuvent y accédé pour ce faire nous allons utilisé la fonction COUNT

Pour ce faire créer simplement une Form avec 2 textBox, user et Pass et un bouton connexion

Dans le code de votre bouton vous y ajouter simplement ceci :


Code:
  string cmdStr = "SELECT COUNT(*) FROM `base de donnée`.`Table` WHERE Username = '" + textBoxUser.Text + "' AND Password = '" + textBoxPass.Text + "'";
            string connStr = String.Format("server={0};uid={1};pwd={2};database={3}",
               "server", "user", "pass", "base de donné");
            *** = new MySqlConnection(connStr);
            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                MySqlCommand cmd = new MySqlCommand(cmdStr, conn);
                conn.Open();
                MySqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    int count = reader.GetInt32(o);
                    if (count == 0)
                    {
                        MessageBox.Show("Connexion impossible, Raison possible\n\n- Ce compte n'existe pas\n- Les identifiants saisies sonts incorrected\n- Votre Adresse MAC ne correspond pas\n- Votre HWID ne correspond pas", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
              
                    }
                    else if (count == 1)
                    {
                        MessageBox.Show("Connextion en tant que, " + textBoxUser.Text + " réussit", "Succès", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        ;
}


Ce système est bien mais pour vous connecté vous devez donner les informations de sécurité de la BDD , je vous conseille donc de bien protégé votre tool pour ne pas vous faire voler votre base de donnée
Préféré un système de connexion avec une API reste encore une des meilleurs solutions.


/!\ merci de ne pas copier/coller sans crédits /!\

EDIT : A CEUX QUI ONT DES SOUCIS : PASSER PAR LE SYSTME DE @Baptiste
SON TOPIC ICI


Série de tuto :

Episode précédent : Episode 3 clique ici
Episode suivant : En consruction​
GG ! Sa Pourra servir a Beaucoup de personne je pence.. ^^
 
Bonjour je suis un tous nouveau codeur et j'ai besoin d'aide pour cree un liste view etc..... help me plz :'(
Le topic que tu recherche se trouve ici > http://reality-gaming.fr/threads/tu...teview-all-clients.286779/page-2#post-3173690
Ca marche pour tout les domaines ;)
 
Le topic que tu recherche se trouve ici > http://reality-gaming.fr/threads/tu...teview-all-clients.286779/page-2#post-3173690
Ca marche pour tout les domaines ;)
mercie :)
 
qui peut m aider merci
 
http://reality-gaming.fr/threads/systeme-de-connexion-php-sql-pour-vos-logiciels-payant.288652/ Ce système peut remédier à ton problème ;)

Bonne journée sur :RG:
DEVR0 GTP
j ai deja sa je voudrai cree u systeme qui me permettrai de gerer ajouter et supprimer
 
Statut
N'est pas ouverte pour d'autres réponses.
Retour
Haut