La validation des formulaires
Valider côté client pour le confort et côté serveur pour la sécurité, les règles de validation, le renvoi du formulaire avec ses erreurs et ses valeurs, et la redirection après un envoi réussi.
- 24 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Mises en situation
- Comprendre
Quelques cartes du deck
Validation côté serveur : de quoi s'agit-il ?
Voir la réponse
Contrôle des données reçues, fait par l'application avant de les utiliser ou de les enregistrer, quel que soit l'outil qui les a envoyées.
Le serveur ne peut pas se fier au navigateur : un script ou
curlenvoie ce qu'il veut. C'est le seul contrôle qui protège réellement les données.Le serveur valide un code postal avec ce motif. Quelle saisie accepte-t-il à tort ?
```javascript
/[0-9]{5}/.test(saisie)`ab75011cd7501750 117501A
Voir la réponse
ab75011cdSans
^ni$, le motif cherche cinq chiffres consécutifs n'importe où dans le texte, et75011s'y trouve. Les trois autres saisies n'ont jamais cinq chiffres à la suite. Le bon motif est/^[0-9]{5}$/.Le navigateur contrôle un champ grâce à des attributs HTML5 :
required,type='email',min,maxet ….Voir la réponse
Le navigateur contrôle un champ grâce à des attributs HTML5 :
required,type='email',min,maxet pattern.Le champ
<input name='cp' pattern='[0-9]{5}'>refuse l'envoi si la saisie n'est pas composée de cinq chiffres. Le navigateur ancre le motif tout seul.Validation côté client : de quoi s'agit-il ?
Voir la réponse
Contrôle fait dans le navigateur, par des attributs HTML5 ou du JavaScript, avant même l'envoi du formulaire.
Il donne une réponse immédiate et épargne un aller-retour. Mais l'utilisateur peut le contourner, donc il ne remplace jamais le contrôle du serveur.
Une commande à prix négatif arrive en base, alors que le champ HTML porte
min='0'. Quelle est la cause et la réparation ?- Il manquait
required: le navigateur ignoreminsans lui - La base de données accepte tout ; il faut changer le type de colonne
- Le navigateur s'est mal comporté ; il faut le mettre à jour
- Le formulaire a été contourné ; revalider côté serveur
Voir la réponse
Le formulaire a été contourné ; revalider côté serveur
minn'agit que dans le navigateur, quand l'utilisateur clique sur le bouton d'envoi, et sans avoir besoin derequireddès qu'une valeur est saisie. Un script oucurlécrit la requêtePOSTlui-même, sans aucun contrôle. Le serveur doit refuser tout prix négatif.- Il manquait