Actuellement en seconde année de BTS IRIS, je suis en plein projet de fin d'année et je dois le rendre vendredi. Donc je suis très pressé :S

Je vous explique mon soucis : Je dois coder une page permettant de créer un nouveau compte tout en le sauvegardant dans une base de donnée. Alors voici ma page :
http://www.hostingpics.net/viewer.ph...utercompte.jpg

Et voici le code que j'ai écrit pour le moment :

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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
 
public partial class AjouterCompteAdmin : System.Web.UI.Page
{
    int type_req1 = 0;
    static string nom;
 
    protected void Page_Load(object sender, EventArgs e)
    {
        if (this.DropListStatut.SelectedItem.Text == "Administrateur")
        {
            this.TextBoxMail1.Enabled = true;
            this.TextBoxMail2.Enabled = true;
        }
        else // C'est un utilisateur, donc griser les textbox
        {
            this.TextBoxMail1.Enabled = false;
            this.TextBoxMail2.Enabled = false;
        }
 
    }
 
 
    protected void connexion_BD(int type_requete, string nom = "erreur", string prenom = "prenom1", string mdp = "1234", string statut = "utilisateur", string mail1 = "mail1", string mail2 = "mail2")
    {
 
        string connStr = "server=localhost;user=root;database=archive;port=3306;password=archive31;";
        int type_req = type_requete;
        string sql;
        string prenoms = prenom;
        string motdepasse = mdp;
        string statuts = statut;
        string imail1 = mail1;
        string imail2 = mail2;
        int taille;
 
        taille = nom.IndexOf(" ");
 
        MySqlConnection conn = new MySqlConnection(connStr);
 
        try
        {
            conn.Open();
 
            if (TextBoxMdp.Text != TextBoxConfirmation.Text)
            {
                //Erreur MDP
            }
 
            if (type_req == 1) // C'est un utilisateur
            {
 
                sql = "Insert into utilisateur(CB_Utilisateur,Prenom,Mot_De_Passe,Statut) Values ('" + nom.Substring(0, taille) + "','" + nom.Substring(taille + 2, nom.Length) + "','" + TextBoxMdp.Text + "','" + DropListStatut.SelectedValue + "');";
            }
            else // C'est un administrateur
            {
                sql = "Insert into utilisateur(CB_Utilisateur,Prenom,Mot_De_Passe,Statut,Email1,Email2) Values ('" + nom.Substring(0, taille) + "','" + nom.Substring(taille + 2, nom.Length) + "','" + TextBoxMdp.Text + "','" + DropListStatut.SelectedValue + "','" + TextBoxMail1.Text + "','" + TextBoxMail2.Text + "');";
            }
 
            MySqlCommand cmd = new MySqlCommand(sql, conn);
            MySqlDataReader rdr = cmd.ExecuteReader();
 
 
            rdr.Close();
        }
        catch (Exception ex)
        {
            // Pop up d'erreur de connection à la base
        }
        conn.Close();
 
    }
 
    protected void ValiderAjout_Click(object sender, EventArgs e)
    {
        int type_req2 = 1;
        int type_req = 1;
        connexion_BD(type_req2, nom);
 
        bool Trouve = false; // Vrai si le couple nom/prénom saisi existe
        string connStr = "server=localhost;user=root;database=archive;port=3306;password=archive31;";
        MySqlConnection conn = new MySqlConnection(connStr);
 
        // Requête pour récupérer tous les noms/prénoms de la base
        string sql = "SELECT CB_Utilisateur, prenom FROM utilisateur";
        // On construit la commande sql avec accès à la base
        MySqlCommand cmd = new MySqlCommand(sql, conn);
        // On exécute la requête : les données se retrouvent donc dans l'objet rdr
        MySqlDataReader rdr = cmd.ExecuteReader();
 
        while (rdr.Read()) // On parcourt rdr pour examiner chaque paire nom/prénom qu'il contient
        {
            // rdr[0] est le nom et rdr[1] le prénom
            // à chaque tour de boucle rdr.Read() se place sur la couple suivant trouvée dans la requête
 
            if ((TextBoxNom.Text == rdr[0]) && (TextBoxPrenom.Text == rdr[1]))
            {
                // Le couple nom/prénom existe dans la base
                Trouve = true;
            }
 
        }
        // On ferme le reader
        rdr.Close();
 
        if (Trouve == true) // Le couple nom/prénom existe dans la base
        {
            // MessageBox, recommencer la saisie      
        }
        else // Le couple nom/prénom est nouveau, on peut l'enregistrer
        {
            // Mettre à jour la base avec le couple nom/prénom saisis
            // MessageBox pour dire que tout s'est bien passé. (Requête dans un Try/Catch en cas d'erreur ?
            if (this.DropListStatut.SelectedItem.Text == "Utilisateur")
            {
                type_req = 1;
            }
            else
            {
                type_req = 0;
            }
            this.connexion_BD(type_req);
        }
    }
}

Le fait est que ça ne marche pas et je bloque depuis plus de 2 semaines dessus, et la date finale approche a grand pas donc je commence sérieusement en Angoisser :S

Merci à tous ceux qui essayerons de m'aider !