IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ADO.NET Discussion :

Problème en code c# .NET


Sujet :

ADO.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Problème en code c# .NET
    Bonjour
    J'ai créé une classe Cmateriel dont les attributs sont
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public int ID_MAT;
            public String Description_MAT;
            public int N_serie;
            public int ID_Modele;
            public int Prix_achat;
            public int ID_Lot;
            public int ID_Etat;
    ensuite j'ai créé des méthodes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    public void ajouter(int id_mat, string description_mat, int N_serie, int modele_mat, int prix_mat, int id_lot, int id_etat) 
            {
                Form1 fm = new Form1();
                SqlConnection conn = new SqlConnection();
                SqlCommand cmd = new SqlCommand();
                conn.Open();
                cmd = new SqlCommand("INSERT INTO MATERIEL VALUES("+t1.text+",'"+t2.text+"',"+t3.text+","+t4.text+","+t5.text+","+t6.text+","+t7.text+")",conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
     
    public void supprimer(int id_mat, string description_mat, int N_serie, int modele_mat, int prix_mat, int id_lot, int id_etat) 
            {
                SqlConnection conn = new SqlConnection();
                SqlCommand cmd = new SqlCommand();
                conn.Open();
                cmd = new SqlCommand("DELETE FROM MATERIEL WHERE id_mat ="+ id_mat,conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
    J'ai créé un formulaire et quand je veux remplir le code des boutons Ajouter et Supprimer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    CMateriel cm = new CMateriel();
            connexion conn = new connexion();
     
     
    private void ajouter_Click(object sender, EventArgs e) {
     
                cm.ajouter(textBox1.Text, textBox2.Text,textBox3.Text,textBox4.Text,textBox5.Text,textBox6.Text,textBox7.Text);
     
     
            }
     
    private void supprimer_Click(object sender, EventArgs e) {
     
                cm.supprimer(textBox1.Text, textBox2.Text,textBox3.Text,textBox4.Text,textBox5.Text,textBox6.Text,textBox7.Text);
     
     
            }
    ca ne fonctionne pas.Veuillez m'aider s'il vous plait.

  2. #2
    Membre éprouvé Avatar de Momoth
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 318
    Points : 1 236
    Points
    1 236
    Par défaut
    Bonjour,

    On a besoin de plus d'information que "ça ne fonctionne pas". Tu as un message d'erreur ?
    La Triforce du développement : Fainéantise, Curiosité et Imagination.

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Oui j'ai des erreurs comme ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    //classe Form1(code du formulaire)
    private void ajouter_Click(object sender, EventArgs e)
            {
                cm.ajouter(T1.Text, T2.Text, T3.Text, T4.Text, T5.Text, T6.Text, T7.Text);
            }
    cm.ajouter ... est souligné en rouge


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //classe Cmateriel
    public void ajouter(int ID_MAT, String Description_MAT, int N_serie, int ID_Modele, int Prix_achat, int ID_Lot, int ID_Etat)
            {
                Form1 fm = new Form1();
                SqlConnection conn = new SqlConnection();
                SqlCommand cmd = new SqlCommand();
                conn.Open();
                cmd = new SqlCommand("INSERT INTO MATERIEL VALUES("+ T1.Text +",'" + t2.text + "'," + t3.text + "," + t4.text + "," + t5.text + "," + t6.text + "," + t7.text + ")", conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
    La meme chose pour cette partie
    ("+ T1.Text +",'" + t2.text + "'," + t3.text + "," + t4.text + "," + t5.text + "," + t6.text + "," + t7.text + "

  4. #4
    Membre éprouvé Avatar de Momoth
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 318
    Points : 1 236
    Points
    1 236
    Par défaut
    Bonjour,

    Les messages d'erreurs sont affichés quand tu passes le curseur sur la ligne rouge.

    Pour ta méthode ajouter_Click() tu as déjà un problème de type. Tu n'envoie que des string à ta méthode ajouter(). Le cast de string à int de ne se fait pas implicitement. Tu doit faire la conversion toi même.

    Ensuite pour ta deuxième méthode, tu appelles des objets qui n'existent pas dans ce contexte. t1, t2, ... sont tes textbox situés dans Form1, ils ne sont pas accessibles directement depuis les autres classes. De plus, tu passes déjà leurs contenus en paramètre à ta méthode mais tu ne les utilises pas.
    La Triforce du développement : Fainéantise, Curiosité et Imagination.

  5. #5
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 5
    Points : 4
    Points
    4
    Par défaut ...
    Salut
    C'est bon j'ai trouvé l’erreur, mais je veux remplir mon bouton ajouter depuis cette méthode située dans la classe CMateriel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    //La classe CMateriel : Méthode ajouter
    public void Ajouter(CMateriel obj) {
                sql.update("INSERT INTO MATERIEL(DESCRIPTION_MAT, N_SERIE, ID_MODELE, PRIX_ACHAT, ID_LOT, ID_ETAT) VALUES('" + obj.DESCRIPTION_MAT + "', " + obj.N_SERIE + ", " + obj.ID_MODELE + ", " + obj.PRIX_ACHAT + ", " + obj.ID_LOT + ", " + obj.ID_ETAT + ")");
            }
    Et voici la classe du Formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    private void button2_Click(object sender, EventArgs e) {
             CMateriel cm = new CMateriel();
             cm.ajouter(  //Je sais pas ce que je dois écrire ici );
     
            }

  6. #6
    Membre éprouvé Avatar de Momoth
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 318
    Points : 1 236
    Points
    1 236
    Par défaut
    Il faut que tu lui passe une instance de CMateriel avec toutes les propriétés que tu veux enregistrer.

    Ça te donne quelque chose dans le style suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    cm.ajouter(new CMateriel()
    {
          N_serie = T1.text,
          ID_modele = T2.text,
          ...
    });
    La Triforce du développement : Fainéantise, Curiosité et Imagination.

  7. #7
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    Pensez à utiliser les sqlParameters pour l'insertion de vos données, vous vous exposez à un risque d'attaque par SQLINJECTION!
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

Discussions similaires

  1. [Débutant] Problème de Compréhension code VB .Net
    Par geekploy dans le forum VB.NET
    Réponses: 8
    Dernier message: 12/04/2013, 19h02
  2. Réponses: 4
    Dernier message: 03/03/2010, 09h08
  3. j'ai un probléme avc un code vb.net aider moi svp
    Par dv-2008 dans le forum VB.NET
    Réponses: 12
    Dernier message: 29/01/2008, 09h20
  4. [VB.Net] Problème de code
    Par Fullmetal82 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/02/2007, 10h03
  5. [VB.Net] Problème de code
    Par Fullmetal82 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 01/02/2007, 21h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo