VALIDATION DE FORMULAIRE (PHP4)

Signaler
Messages postés
592
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
4 décembre 2008
-
Messages postés
67
Date d'inscription
mercredi 2 juillet 2003
Statut
Membre
Dernière intervention
1 septembre 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/45474-validation-de-formulaire-php4

Messages postés
67
Date d'inscription
mercredi 2 juillet 2003
Statut
Membre
Dernière intervention
1 septembre 2008

Basique, sans plus. Une validation de formulaire vérifierai le type (string, integer ...). La forme (email, ip, date, ...). Si c'est requis ou non. Le nombre maximum et minimum de caractères autorisé. Et plus encore.

Ensuite, au lieux de faire :
<<<
$err=errForm($_POST);
>>>
J'aurais directement pris $_POST dans la fonction...

La déclaration de la variable "$err" est aussi inutile que pluie sur roche. D'autant plus que "$err" pourrait retourner false si l'argument qui lui est donné n'est pas de type 'array' ou pour toute autre raison...

Je ne critique pas pour enfoncer, mais pour faire réfléchir sur le but originel : proposer quelque chose de fonctionnel et d'utile. Ici, ça peu peut-être être utile ... Aussi, n'hésite pas a aller regarder le code des outils déjà existant - style framework - pour voir comment ils font.

Pour moi, un code utile, c'est un code qui me permet d'aller plus vite. Ici, tu vérifie juste si le champ existe et si il est valide s'il est un mail...
Messages postés
39
Date d'inscription
vendredi 9 mai 2003
Statut
Membre
Dernière intervention
25 mai 2009

Mouais ... je trouve ça aussi niveau débutant. C'est extra simplifié pour une fonction de vérification de formulaire.

Je note pas mal de problèmes. Je pense que le faite qu'un champ est obligatoire doit être séparé de la vérification de la forme. Par exemple, un champ doit pouvoir être de type mail et obligatoire ou de type mail mais pas obligatoire. Ou de type nombre et obligatoire ou non ...

Bien sûr, il manque plein de fonctions de vérifications.

Ensuite, je pense que le plus intéressant serait de regrouper tout ça dans une classe pour faire la vérification d'un coup du formulaire, en stocker les résultats en cas d'erreur pour pouvoir les retourner au formulaire, gérer des messages d'erreur en fonction du type d'erreur ... Souvent l'idéal dans le cas de traitement de formulaire est d'utiliser une classe de template en parallèle. Tu prends un template ou tu crée un formulaire du genre : ¤¤¤erreur_obl_nom¤¤¤" /> et la classe est capable de retourner les valeurs dans les tags ¤¤¤value_...¤¤¤ et les messages d'erreur dans les tags ¤¤¤erreur...¤¤¤.

Enfin, pour pousser encore les fonctionnalités d'un traitement de formulaire, on peut faire en sorte que la classe puisse se coupler à une base de donnée pour en enregistrer automatiquement les résultats en cas de succès où aller chercher les valeurs des champs dans une base de données dans le cas d'une modification d'un enregistrement existant.

En bref, c'est un bon début, mais pour que ce soit vraiment pratique, il faudrait encore pousser tout ça.

Bon courage
Messages postés
167
Date d'inscription
mardi 21 septembre 2004
Statut
Membre
Dernière intervention
2 mai 2009

Hello World,

a)Il Manque juste la récupération des valeurs déjà envoyées dans le cas ou il y a des champs vides ou mal remplis...
avec une petite structure conditionnelle de base...(if(){ }elseif{ } ...)
" .../>

b)[... class="<?= @$err["obl_nom"]; ?>] devient: [...class="<?php echo $err['obl_nom']; ?>]
* J'ai enlevé @ devant la var car en principe tu dois faire les contrôles pour éviter les erreurs donc une petite structure conditionnelle de base en gros (if(){ }elseif{ } ...)

Hum initié ca dépend pour qui, la, je pense que c'est du code pour débutant !
Je noterai après les petites modifications ^^ Bye (ca veut dire ciao en anglais lol)
Messages postés
592
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
4 décembre 2008

Les accents sont tout à fait valides, un domaine peut parfaitement contenir un accent donc de ce coté c'est correct. Par contre il y a aussi la longueur limité a 64charactères pour la mailbox et le domaine limité a 255.

Mais c'était plus une remarque comme ça,je ne suis pas expert des regex et je me doute que pour respecter à la perfection une addresse mail la regex risque d'être très complexe. Je suis même pas sur qu'une regex suffise.

Donc c'était une simple remarque, pas vraiment une critique ;)
Et la meilleure place pour avoir la syntaxe c'est la RFC 3696: http://www.faqs.org/rfcs/rfc3696.html

Bonne continuation
Afficher les 7 commentaires