Partage
  • Partager sur Facebook
  • Partager sur Twitter

Premier programme C#

en aprentissage

    17 mars 2011 à 22:25:47

    Bonjour, je viens a ce jour pour vous demandez un peu d'aide dans la mesure du possible.

    Tout d'abord une petite présentation de mon programme a l'heure actuel:

    Inscription v.1:

    1.Application Windows Form.
    2.Interface (ok) :
    Image utilisateur

    3.Connexion a une base de donnée MySQL. (ok)
    4.Envoi des informations des champs Nom de compte et Mot de passe vers une base de données MySQL. (ok)
    5.Vérification que le compte soit bien crée. (en cours)
    6.Restriction de caractère. (a venir)
    7.Vérifié si le compte est déjà dans la base de données MySQL. (a venir)
    8.Base de données configurable depuis un fichier de configuration XML. (a venir)
    9.Interface de connexion au compte. (a venir)
    . ...

    Comme vous pouvez le voir ci-dessus je suis arriver a l'étape n°5 est c'est la que cela bloque ma requête n'a pas l'air d'aboutir ?? (Toute critique seront les bienvenue, j'apprends en ce moment en développent cette application (un champ de mine ?) en parallèle avec le tutoriel du site du zéro (Merci a Narvarth))

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using MySql.Data.MySqlClient;
    using InfoBox;
    
    
    namespace login
    {
        public partial class Form1 : Form
        {
    
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
    
            }
            
            private void button1_Click(object sender, EventArgs e)
            {
                string nom;
                nom = textBox1.Text;
    
                string connString = "Server=localhost;Port=3306;Database=test;Uid=root;Password=;";
                MySqlConnection conn = new MySqlConnection(connString);
                MySqlCommand command = conn.CreateCommand();
    
                command.CommandText = "insert into account (id,nomdecompte,motdepasse) values('','"+ textBox1.Text +"','"+ textBox2.Text +"')";
                conn.Open();
                command.ExecuteNonQuery();
    
                conn.Close();
    
                //MessageBox.Show(maRequete);
                /*if(nom == maRequete)
                {
                    InformationBox.Show("Compte créer avec succés", "Compte Créer", InformationBoxIcon.Success, InformationBoxStyle.Modern, InformationBoxTitleIconStyle.None);
                }
                else
                {
                    InformationBox.Show("Votre compte n'as pas pu être créer veuillez réesayer ultérieurement.", "Erreur lors de la créeation du compte", InformationBoxButtons.RetryCancel, InformationBoxIcon.Error, HelpNavigator.Topic, InformationBoxStyle.Modern, InformationBoxTitleIconStyle.None);
                }
               */ 
            }          
    
            public string maRequete; // Déclaration
    
            public string Verification() //Requete permetant d'afficher les Noms de compte
                 {
                     string connString = "Server=localhost;Port=3306;Database=test;Uid=root;Password=;";
                     MySqlConnection conn = new MySqlConnection(connString);
                     MySqlCommand command = conn.CreateCommand();
    
                     maRequete = "SELECT nomdecompte FROM account WHERE id";
                    
                try
                     {
                         conn.Open();
                     }
    
                     catch (Exception ex)
                     {
                         Console.WriteLine(ex.Message);
                     }
                     MySqlDataReader reader = command.ExecuteReader();
                     while (reader.Read())
                     {
                         Console.WriteLine(reader["nomdecompte"].ToString());
                     }
                     Console.ReadLine();
                     return maRequete;
                 }
           
            private void textBox1_TextChanged(object sender, EventArgs e)
            {
    
    
            }
    
            private void textBox2_TextChanged(object sender, EventArgs e)
            {
            
            }
    
    
            
            
        }
    }
    


    Je ne comprend vraiment pas serais-ce le return ? En mode console j'ai bien toute mes entrées qui s'affiche avec cette requête :x.

    Merci d'avance pour vos éventuelles réponses.

    Quentin.
    • Partager sur Facebook
    • Partager sur Twitter
      17 mars 2011 à 23:23:48

      maRequete = "SELECT nomdecompte FROM account WHERE id";
      

      Il ne manquerait pas un morceau à ta requête ? :o

      Ensuite dans ta requête insert tu tentes de spécifier une string vide comme nouvel id. Est-ce vraiment ce que tu veux faire ? :euh:
      • Partager sur Facebook
      • Partager sur Twitter
        18 mars 2011 à 14:16:02

        Citation : Orwell

        maRequete = "SELECT nomdecompte FROM account WHERE id";
        


        Il ne manquerait pas un morceau à ta requête ? :o



        Je ne pense pas je demande a afficher tout les nom de comptes de ma base de donnée et ensuite comparé mon nom de compte entré précédemment avec ceux déjà présent dans ma base de données (?)


        Citation : Orwell

        Ensuite dans ta requête insert tu tentes de spécifier une string vide comme nouvel id. Est-ce vraiment ce que tu veux faire ? :euh:



        Oui, car dans ma base de données l'id s'implémente tout seul ^^.
        • Partager sur Facebook
        • Partager sur Twitter
          18 mars 2011 à 16:04:43

          Citation : quentin869

          Citation : Orwell

          maRequete = "SELECT nomdecompte FROM account WHERE id";
          


          Il ne manquerait pas un morceau à ta requête ? :o


          Je ne pense pas je demande a afficher tout les nom de comptes de ma base de donnée et ensuite comparé mon nom de compte entré précédemment avec ceux déjà présent dans ma base de données (?)


          Si si il y a bien un problème dans ta requête. Et pour ce que tu veux faire, il y a beaucoup plus simple. Au lieu de tout sélectionner en SQL en comparer ensuite dans ton programme en C# tu fais un SELECT COUNT(*) avec une clause LIKE pour savoir si le compte existe déjà ou non.

          Citation : quentin869

          Oui, car dans ma base de données l'id s'implémente tout seul ^^.


          Et bien dans ce cas tu fais juste:
          insert into account (nomdecompte,motdepasse) values('"+ textBox1.Text +"','"+ textBox2.Text +"')
          
          • Partager sur Facebook
          • Partager sur Twitter
            18 mars 2011 à 16:17:50

            Merci Pierreet je regarde sa de-suite.
            • Partager sur Facebook
            • Partager sur Twitter

            Premier programme C#

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown