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

C# Discussion :

regles de saisie de données dans un formulaire


Sujet :

C#

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 21
    Points : 21
    Points
    21
    Par défaut regles de saisie de données dans un formulaire
    Bonsoir tout le monde ! j'espére que tout le monde va bien !
    voila j'ai crée un formulaire en ASP.net et j'ai quelques problémes quand à la saisie des données :

    1) mes données ne doivent pas être nulles car elles sont rentrés dans une Base de données .

    2) j'aimerais aussi faire un controle sur la structure des données style [a..z.A..Z]* sur les noms par exemple et de [0..9]* sur les numéros de telephone

    je suis persudée que ce n'est que de l'algorithmique mais j'avoue : faire les test sur mes textbox exemple if(textbox.text != null ) ou (textbox.text !="") ne marche pas super bien car si il ya un espace c'est considéré comme étant un caractére


    voila.. merci beaucoup

  2. #2
    Membre du Club
    Homme Profil pro
    All and nothing
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : All and nothing

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Points : 43
    Points
    43
    Par défaut
    Hello,


    en C#, il y a les fonctions isNumeric et isChar.

    Regarde ici

    A+

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 21
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par MRekee Voir le message
    Hello,


    en C#, il y a les fonctions isNumeric et isChar.

    Regarde ici

    A+

    merci beaucoup de m'avoir repondu si vite je vais essayer cela .. j'espére que cela marchera

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 21
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par MRekee Voir le message
    Hello,


    en C#, il y a les fonctions isNumeric et isChar.

    Regarde ici

    A+
    en fait voila j'ai pris connaissance du tuto sauf que j'ai un probleme dans mon if : voila mon code :
    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
     
     
    using System.ComponentModel;
    using System.Drawing;
    using System.Web.SessionState;
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
     
    namespace ExempleASP
    {
        public partial class page2 : System.Web.UI.Page
        {
     
            char[] black_list_string = {'0','1','2','3','4','5','6','7','8','9',' ','@' ,'&','\'','\'',
                                       '(','[',']',')','°','~','#','-','`','?','§','!','^','=','+','}','{','*','/','\\','_','.','>','<' };
     
            char[] list_num = {' ','@' ,'&','\'','\'',
                                       '(','[',']',')','°','~','#','-','`','?','§','!','^','=','+','}','{','*','/','\\','_','.','>','<' };
     
     
            protected void Page_Load(object sender, EventArgs e)
            {
     
     
     
            }
     
     
            protected void SubscribeButton_Click(object sender, System.EventArgs e)
            {
     
                if (Page.IsValid)
                {
     
     
                    Service_Web petitExemple = new Service_Web();
     
                    string textBoxA = TextBox1.Text;
                    string textBoxB = TextBox2.Text;
                    string textBoxC = TextBox3.Text;
                    string textBoxD = TextBox4.Text;
                    string textBoxE = TextBox5.Text;
     
     
                    //test sur les text boxxxx
     
                    if ((textContainsUnallowedCharacter(textBoxA, black_list_string) == false) && (textContainsUnallowedCharacter(textBoxB, black_list_string) == false) && (textContainsUnallowedCharacter(textBoxD, list_num) == false) && (textContainsUnallowedCharacter(textBoxE, list_num) == false))
                    {
     
                        petitExemple.insert(textBoxA, textBoxB, textBoxC, textBoxD, textBoxE);
     
                        TextBox1.Text = null;
                        TextBox2.Text = null;
                        TextBox3.Text = null;
                        TextBox4.Text = null;
                        TextBox5.Text = null;
     
                        MessageBox.Show("Operation Réussi !");
     
     
     
                    }
     
                    else
                    {
                        MessageBox.Show(" veuillez remplir tout les champs svp");
     
     
                    }
     
     
                }
     
     
     
     
     
     
     
     
     
     
     
     
     
            }
     
     
     
        private bool textContainsUnallowedCharacter(string T, char[] UnallowedCharacters)
        {        
            for (int i = 0; i < UnallowedCharacters.Length; i++)
                if (T.Contains(UnallowedCharacters[i]))
                   return true;
     
            return false;
        }
     
     
     
     
     
     
     
     
     
        }
     
    }

    si je saisi un des caractéres ça marche mais si je ne rempli pas un champs ça saisie quand méme quand les autres n'ont pas d'anomalie
    ps : (textboxA,*B,*C,*D,*E) =(resp) nom,prenom,email,tel_fix,tel_portable


    donc voila je ne sais pas si c'est parceque depuis ce matin que je suis dessus



    edit : donc voila j'ai reussi a le faire sur les caractéres en tout genre nikel :

    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
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    using System.ComponentModel;
    using System.Drawing;
    using System.Web.SessionState;
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
     
    namespace ExempleASP
    {
        public partial class page2 : System.Web.UI.Page
        {
     
            char[] black_list_string = {'0','1','2','3',';',':',',','4','5','6','7','8','9',' ','@' ,'&','\'','\'',
                                       '(','[',']',')','°','~','#','-','`','?','§','!','^','=','+','}','{','*','/','\\','_','.','>','<' };
     
            char[] list_num = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
                               'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
                               ' ','@' ,'&','\'','\'',
                               '(','[',']',')','°','~',
                               '#','-','`','?','§','!',
                               '^','=','+','}','{','*',
                               '/','\\','_','.','>','<',';',':',','
                              };
     
     
            protected void Page_Load(object sender, EventArgs e)
            {
     
     
     
            }
     
     
            protected void SubscribeButton_Click(object sender, System.EventArgs e)
            {
     
                if (Page.IsValid)
                {
     
     
                    Service_Web petitExemple = new Service_Web();
     
                    string nom = TextBox1.Text;
                    string prenom = TextBox2.Text;
                    string email = TextBox3.Text;
                    string fixe = TextBox4.Text;
                    string port = TextBox5.Text;
     
     
                    //test sur les text boxxxx
     
    if ((textContainsUnallowedCharacter(nom, black_list_string) == false) 
       && (textContainsUnallowedCharacter(prenom, black_list_string) == false) 
       && (textContainsUnallowedCharacter(fixe, list_num) == false)
       && (textContainsUnallowedCharacter(port, list_num) == false) 
       || ((nom.Contains("")==false) 
       || (prenom.Contains("")==false) 
       || (email.Contains("")==false)
       || (fixe.Contains("")==false)
       || (port.Contains("")==false))) 
       /*|| ((textContainsUnallowedCharacter(nom, black_list_string) == false) 
       || (textContainsUnallowedCharacter(prenom, black_list_string) == false) 
       || (textContainsUnallowedCharacter(fixe, list_num) == false) 
       || (textContainsUnallowedCharacter(port, list_num) == false)))*/
    {               
     
     
    petitExemple.insert(nom, prenom, email, fixe, port);
     
                        TextBox1.Text = null;
                        TextBox2.Text = null;
                        TextBox3.Text = null;
                        TextBox4.Text = null;
                        TextBox5.Text = null;
     
                        MessageBox.Show("Operation Réussi !");
     
     
     
    }
     
    else
    {
       MessageBox.Show(" veuillez saisir correctement tout les champs");
     
     
     }
     
     
                }
     
     
     
     
    }
     
     
     
     
     
     
     
     
     
     
     
     
        private bool textContainsUnallowedCharacter(string T, char[] UnallowedCharacters)
        {        
            for (int i = 0; i < UnallowedCharacters.Length; i++)
                if (T.Contains(UnallowedCharacters[i]))
                   return true;
     
            return false;
        }
     
     
     
     
     
     
     
     
     
        }
     
    }

    mais ça m’insère toujours des champs lorsque c'est vide

  5. #5
    Membre du Club
    Homme Profil pro
    All and nothing
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : All and nothing

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Points : 43
    Points
    43
    Par défaut
    Adieu,

    ok je ne savais pas que tu traitais plusieurs textbox et que tu validais ton formulaire uniquement lorsque les textbox sont valides.

    Si tu veux optimiser ton code, moi, j'aurai utilisé les expression régulières. Avant, il faut que tu saches qu'elle Textbox (1 ou 2 ou 3) est censé contenir que des chiffre ou que des lettres.

    Si tu ne connais pas encore les expressions régulières c'est lourd les 10 premières minute de lecture mais une fois que tu as appris, c'est un gain de temps énorme selon la situation.

    Voici des exemples d'utilisation en C#: ici

    Avec les exp régulières tout devient plus facile ^^

    A+

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 21
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par MRekee Voir le message
    Adieu,

    ok je ne savais pas que tu traitais plusieurs textbox et que tu validais ton formulaire uniquement lorsque les textbox sont valides.

    Si tu veux optimiser ton code, moi, j'aurai utilisé les expression régulières. Avant, il faut que tu saches qu'elle Textbox (1 ou 2 ou 3) est censé contenir que des chiffre ou que des lettres.

    Si tu ne connais pas encore les expressions régulières c'est lourd les 10 premières minute de lecture mais une fois que tu as appris, c'est un gain de temps énorme selon la situation.

    Voici des exemples d'utilisation en C#: ici

    Avec les exp régulières tout devient plus facile ^^

    A+
    je te remercie beaucoup pour ta réponse en fait j'ai réussi à mettre les contrôles juste que je n'arrive pas à contrôler que si il y'a un champs vide et bien ça insère quand même une ligne vide dans la bd :s

    EDIT:
    j'ai réussi a faire une regle strict pour les champs vide mais le souci c'est que ça n'accepte plus rien :s comment faire le blem est au niveau de mon if :s
    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
     
     
    if (
          (textContainsUnallowedCharacter(nom,black_list_string)==false) 
       && (textContainsUnallowedCharacter(prenom,black_list_string)==false) 
       && (textContainsUnallowedCharacter(fixe,list_num)== false)
       && (textContainsUnallowedCharacter(port,list_num)== false) 
     
       &&
         (
          (nom.Contains("")==false) 
       && (prenom.Contains("")==false) 
       && (email.Contains("")==false)
       && (fixe.Contains("")==false)
       && (port.Contains("")==false)
          )
        )
     
       /*|| ((textContainsUnallowedCharacter(nom, black_list_string) == false) 
       || (textContainsUnallowedCharacter(prenom, black_list_string) == false) 
       || (textContainsUnallowedCharacter(fixe, list_num) == false) 
       || (textContainsUnallowedCharacter(port, list_num) == false)))*/
    {               
     
     
    petitExemple.insert(nom, prenom, email, fixe, port);
     
                        TextBox1.Text = null;
                        TextBox2.Text = null;
                        TextBox3.Text = null;
                        TextBox4.Text = null;
                        TextBox5.Text = null;
     
                        MessageBox.Show("Operation Réussi !");
     
     
     
    }
     
    else
    {
       MessageBox.Show(" veuillez saisir correctement tout les champs");
     
     
     }

  7. #7
    Membre du Club
    Homme Profil pro
    All and nothing
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : All and nothing

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Points : 43
    Points
    43
    Par défaut
    Un champ vide dans une de test Textbox ?

    J'ai tendance à ne pas utiliser != "". Utilise les propriétés de ton objet c'est plus simple et fait pour ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(MaTextBox.Text.Length <= 0) MessageBox.Show("Erreur champ vide");
    Ça répond à ta question ?

  8. #8
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 21
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par MRekee Voir le message
    Un champ vide dans une de test Textbox ?

    J'ai tendance à ne pas utiliser != "". Utilise les propriétés de ton objet c'est plus simple et fait pour ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(MaTextBox.Text.Length <= 0) MessageBox.Show("Erreur champ vide");
    Ça répond à ta question ?
    pas vraiment mais merci quand méme pour ton aide

Discussions similaires

  1. Réponses: 18
    Dernier message: 23/12/2011, 20h11
  2. Pb saisie données dans ss-formulaire
    Par Snofiz dans le forum IHM
    Réponses: 0
    Dernier message: 04/03/2010, 23h18
  3. Réponses: 3
    Dernier message: 22/08/2009, 12h24
  4. Réponses: 16
    Dernier message: 30/01/2008, 15h11
  5. saisie de données dans formulaire
    Par philpaul dans le forum Access
    Réponses: 4
    Dernier message: 15/09/2005, 13h13

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