Accueil     Commander     Clients     Téléchargements     Contacts     I-mode        Offre spéciale
   Hébergement ASP-PHP
      Pack PRO I
      Pack PRO II
      Pack PRO III
   Hébergement .NET
      Pack .NET I
      Pack .NET II
      Pack .NET III
   Revendeurs
      SEMI-DEDIE I
      SEMI-DEDIE II
      SERVEURS DEDIES
   Services
      NOM DE DOMAINE
      HTTPS & SSL
      E-COMMERCE
      SQL SERVEUR
      WEBMAIL
      REFERENCEMENT
   Les + Prosygma
      NOS TARIFS
      LE RESEAU
      ASSISTANCE
   Outils
      WHOIS
      FAQ
      Aide IIS
      Ressource KIT FP
      Composants ASP
     PARTENAIRES
     
     
     

Solutions hébergement
Support Dot NET.
  
  Source : Les laboratoires Microsoft

 

Validation de formulaires par le biais de contrôles serveur


Présentation de la validation

L'infrastructure Web Forms comprend un ensemble de contrôles serveur de validation qui fournit un moyen convivial, mais puissant, de détecter les erreurs dans les formulaires d'entrée et, le cas échéant, d'afficher des messages à l'intention de l'utilisateur.

Les contrôles de validation sont ajoutés à une page Web Forms de la même manière que les autres contrôles serveur. Il s'agit de contrôles destinés à des types de validation particuliers, tels que la vérification de plage ou les critères spéciaux, plus un RequiredFieldValidator qui garantit qu'aucun utilisateur ne peut ignorer un champ d'entrée. Vous pouvez attacher plusieurs contrôles de validation à un contrôle d'entrée. Par exemple, vous pouvez spécifier à la fois qu'une entrée est obligatoire et qu'elle doit contenir une plage déterminée de valeurs.

Les contrôles de validation utilisent un sous-ensemble restreint de contrôles serveur HTML et Web. Pour chaque contrôle, une propriété spécifique contient la valeur à valider. Le tableau suivant énumère les contrôles d'entrée qui peuvent être validés.

Contrôle Propriété de validation
HtmlInputText Value
HtmlTextArea Value
HtmlSelect Value
HtmlInputFile Value
TextBox Text
ListBox SelectedItem.Value
DropDownList SelectedItem.Value
RadioButtonList SelectedItem.Value


Types de contrôles de validation

Un champ obligatoire constitue la forme la plus simple de validation. Si l'utilisateur entre une valeur dans un champ, il est valide. Si tous les champs de la page sont valides, la page est valide. L'exemple suivant illustre cette utilisation à l'aide de RequiredFieldValidator.

 
VB Validator1.aspx

Il existe également des contrôles de validation pour des types de validation spécifiques, tels que la vérification de la plage ou les critères spéciaux. Le tableau suivant énumère les contrôles de validation.

Nom du contrôle Description
RequiredFieldValidator Garantit que l'utilisateur n'ignore pas d'entrée.
CompareValidator Compare une entrée utilisateur avec une valeur de constante ou une valeur de propriété d'un autre contrôle à l'aide d'un opérateur de comparaison (inférieur à, égal à, supérieur à, etc).
RangeValidator Vérifie qu'une entrée utilisateur est comprise entre les limites inférieures et supérieures. Vous pouvez vérifier les plages indiquées sous forme de paires de nombres, de caractères alphabétiques ou de dates. Les limites peuvent être exprimées sous la forme de constantes.
RegularExpressionValidator Vérifie que l'entrée correspond à un modè défini par une expression régulière. Ce type de validation vous permet de vérifier des séquences de caractères prévisibles, telles que celles figurant dans les numéros de sécurité sociale, les adresses de messagerie, les numéros de téléphone, les codes postaux, etc.
CustomValidator Vérifie l'entrée de l'utilisateur à l'aide d'une logique de validation que vous codez personnellement. Ce type de validation vous permet de vérifier les valeurs dérivées au moment de l'exécution.
ValidationSummary Affiche les erreurs de validation sous une forme récapitulative pour tous les validateurs d'une page.


Validation côté client

Les contrôles de validation vérifient toujours la validation dans le code serveur. Cependant, si l'utilisateur utilise un navigateur prenant en charge DHTML, les contrôles de validation peuvent également effectuer la validation à l'aide d'un script client. Avec la validation côté client, les erreurs éventuelles sont détectées sur le client lors de l'envoi du formulaire au serveur. Si une erreur liée à un valideur est détectée, l'envoi du formulaire au serveur est annulé et la propriété Text du validateur s'affiche. Cela permet à l'utilisateur de corriger l'entrée avant d'envoyer le formulaire au serveur. Les valeurs de champs sont revalidées dès que le champ contenant l'erreur perd le focus. Il s'agit, pour l'utilisateur, d'une méthode de validation riche et interactive.

Remarquez que l'infrastructure de page Web Forms effectue toujours la validation sur le serveur, même si elle a déjà été exécutée sur le client. Cela permet d'empêcher les utilisateurs de pouvoir ignorer la validation en empruntant l'identité d'un autre utilisateur ou d'une transaction préapprouvée.

La validation côté client est activée par défaut. Si le client le permet, la validation de niveau supérieur s'effectue automatiquement. Pour désactiver la validation côté client, affectez à la propriété ClientTarget de la page la valeur « Downlevel » (« Uplevel » force la validation côté client).

 
VB Validator2.aspx



Affichage des erreurs de validation

Lorsque l'entrée utilisateur est traitée (par exemple, lors de l'envoi du formulaire), l'infrastructure de page Web Forms la passe aux contrôles de validation associés. Ceux-ci testent l'entrée utilisateur et définissent une propriété pour indiquer si elle a réussi le test de validation. Une fois tous les contrôles de validation traités, la propriété IsValid de la page est définie. Si l'un des contrôles indique qu'une vérification de validation a échoué, la totalité de la page est définie comme non valide.

Si un contrôle de validation est erroné, un message d'erreur peut s'afficher sur la page à côté de ce contrôle de validation ou dans un contrôle ValidationSummary situé ailleurs sur la page. Le contrôle ValidationSummary s'affiche lorsque la propriété IsValid de la page a la valeur false. Il interroge chacun des contrôles de validation de la page et agrège les messages texte qu'ils exposent. L'exemple suivant illustre l'affichage d'erreurs à l'aide d'un contrôle ValidationSummary.

 
VB Validator3.aspx



Utilisation de CompareValidator

Le contrôle serveur CompareValidator compare les valeurs de deux contrôles. CompareValidator utilise trois propriétés principales pour effectuer sa validation. ControlToValidate et ControlToCompare contiennent les valeurs à comparer. Operator définit le type de comparaison à effectuer, tel que Equal ou Not Equal. CompareValidator effectue la validation en évaluant ces propriétés sous la forme d'une expression, de la manière suivante :

( ControlToValidate <Operator> ControlToCompare ) Si l'expression prend la valeur true, le résultat de la validation est valide.

L'exemple suivant illustre l'utilisation du contrôle CompareValidator.

 
VB Validator4.aspx



Utilisation de RangeValidator

Le contrôle serveur RangeValidator teste si une valeur d'entrée est comprise dans une plage donnée. RangeValidator utilise trois propriétés principales pour effectuer sa validation. ControlToValidate contient la valeur à valider. MinimumValue et MaximumValue définissent les valeurs minimale et maximale de la plage valide.

Cet exemple illustre l'utilisation du contrôle RangeValidator.

 
VB Validator5.aspx



Utilisation d'expressions régulières

Le contrôle serveur RegularExpressionValidator vérifie que l'entrée correspond à un modèle défini par une expression régulière. Ce type de validation vous permet de vérifier des séquences de caractères prévisibles, telles que celles figurant dans les numéros de sécurité sociale, les adresses de messagerie, les numéros de téléphone, les codes postaux, etc.

RegularExpressionValidator utilise deux propriétés principales pour effectuer sa validation. ControlToValidate contient la valeur à valider. ValidationExpression contient l'expression régulière par rapport à laquelle effectuer la correspondance.

Ces exemples illustrent l'utilisation du contrôle RegularExpressionValidator.

 
VB Validator6.aspx

 
VB Validator7.aspx



Exécution d'une validation personnalisée

Le contrôle serveur CustomValidator appelle une fonction définie par l'utilisateur pour effectuer les validations que les validateurs standard ne peuvent pas traiter. La fonction personnalisée peut s'exécuter sur le serveur ou dans un script côté client, tel que JScript ou VBScript. Pour une validation personnalisée côté client, le nom de la fonction personnalisée doit être identifié dans la propriété ClientValidationFunction. La fonction personnalisée doit être présentée sous la forme suivante :

function myvalidator(source, arguments) Remarquez que source est l'objet CustomValidator côté client et arguments est un objet comportant deux propriétés, Value et IsValid. La propriété Value est la valeur à valider et la propriété IsValid est un Boolean utilisé pour retourner les résultats de la validation.

Pour une validation personnalisée côté serveur, placez votre validation personnalisée dans le délégué OnServerValidate du validateur.

L'exemple suivant illustre l'utilisation du contrôle CustomValidator.

 
VB Validator8.aspx



Combinaison de tous les contrôles de validation

Cet exemple illustre un formulaire d'inscription standard utilisant des variantes de contrôles de validation décrits dans cette rubrique.

 
VB Validator9.aspx

Résumé de la section

  1. Des contrôles validateurs peuvent être utilisés pour valider les entrées sur une page Web Forms.
  2. Vous pouvez employer plusieurs contrôles sur un champ d'entrée donné.
  3. La validation côté client peut être utilisée en plus de la validation serveur pour améliorer l'utilisation des formulaires.
  4. Le contrôle CustomValidator permet à l'utilisateur de définir des critères de validation personnalisés.



Nos serveurs sont désormais des serveurs
Pentium 3 Ghz, 1 Go Ram

 La formule de base est à 10 Euros TTC / mois
Si vous avez des besoins plus spécifiques (composants, espace disque...), nous sommes la pour répondre à vos questions.
Rappel : les frais d'installation sont gratuits


Prosygma élu meilleur site.
 
Trois nouveaux composants ASP sont désormais en place sur toutes nos formules.Il s'agit de ASPIMAGE, ASPPOP3 et ASPMAIL.


La dernière version de Microsoft® .NET Framework contient tout ce qu'il vous faut pour faire fonctionner des applications .NET Framework est disponible sur nos serveurs

Cliquez içi pour commander votre hébergement .Net

Votre nom de domaine en .com, .net ou .org au prix unique : 20 Euros

  Vérifiez la disponibilité d'un nom de domaine