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

Langage PHP Discussion :

Validation de formulaire et maintenabilité de code


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 561
    Points : 462
    Points
    462
    Par défaut Validation de formulaire et maintenabilité de code
    Bonjour,

    J'ai une question architecturale concernant la validation de formulaire. L'objectif est bien sur de faire le code le plus propre possible, sans framework, pour valider des formulaires.

    La validation de formulaires est effectuée via l'attribut action d'un formulaire qui redirige vers une page de script. Seulement voilà, un site à n formulaires avec autant de données différentes à valider. Comment garder une structure propre et cohérente pour rendre la validation de formulaire soit facile à maintenir et à corriger ?

    Pour ma modélisation, le recours à une interface avec des signatures de méthodes comme validate() par exemple me paraît bonne mais ça ne fait qu'inciter à utiliser des noms de méthodes uniformes pour des problématiques précises et n'est pas une réponse en soit. C'est surtout une convention de nommage pour de l'implémentation future.

    Utiliser une DAL pour extraire les données (ce que j'utilise) puis créer une classe abstraite Model pour ensuite la faire hériter en fonction du contexte et donc des données à vérifier ? Par exemple ModelLogin qui hérite de Model se charge de valider les informations d'un formulaire de Login avec un user/mot de passe ? Autre exemple, un ModelCommande servirait à valider et éventuellement afficher les commandes d'un client en particulier.

    Comment s'y prendre? MVC est-il une réponse pour la structure et maintenabilité de code pour cette problématique ou y a t-il d'autres approches plus appropriées ?
    Exprimer une différence d'opinion vaut mieux que :

  2. #2
    Membre éclairé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Septembre 2012
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Septembre 2012
    Messages : 416
    Points : 747
    Points
    747
    Par défaut
    Bonjour,

    Vulgairement,

    De mon coté, lorsque je n'utilise pas de Framework, j'essaie de conserver une structure MVC.

    Dans ces cas là, les contrôles se font dans la méthode invoquée (par exemple postAction()) du Controller qui valide les données avant de les transmettre au modèle (ou renvoie vers le formulaire si la validation ne passe pas). Au niveau de la couche modèle, je structure les données pour faire correspondre le format attendu en base de données et informe le controller de l'issue de la requête.


    Formulaire OK:
    FORM --> CONTROLLER --> MODEL --> CONTROLLER --> VIEW

    Formulaire PAS OK :
    FORM --> CONTROLLER --> FORM

  3. #3
    Membre confirmé Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 561
    Points : 462
    Points
    462
    Par défaut
    C'est bien ce que je pensais, MVC. Précisément un point sur lequel l'implémentation est difficile pour moi.

    Je suis bien tombé sur un bon tuto ici

    Une solution (la mauvaise) serait de faire un copier/coller du code, l'intégrer dans mon projet et le tester. Évidement, le jour où il faudra faire des modifs ou du debug ça risque de coincer. Mieux vaut faire un code simple mais que je comprenne parfaitement, des solutions alternatives ? Ce code est à situer où dans le projet pour le rendre fonctionnel ?

    La meilleure approche serait-elle de :
    - développer à la main un contrôleur frontal et système de routage ? L'avantage est que je comprendrais mon code. L'inconvénient est que je peux faire des erreurs.
    - utiliser une solution existante ? Au moins le code sera fonctionnel. Le hic pour la maintenabilité.
    - intégrer un bout de framework qui fait le boulot. Les pour/contre sont équivalents à la solution précédente.
    Exprimer une différence d'opinion vaut mieux que :

Discussions similaires

  1. débuggage de code pour validation de formulaire
    Par Cassandra Nova dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 11/05/2010, 03h16
  2. validation de formulaire - structure de code avec return
    Par tavarlindar dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/10/2008, 18h31
  3. Réponses: 3
    Dernier message: 16/05/2006, 09h23
  4. Valider un formulaire par une image
    Par Fleep dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 31/10/2004, 01h50
  5. [Struts]Validation de formulaire
    Par djoukit dans le forum Struts 1
    Réponses: 4
    Dernier message: 12/03/2004, 09h12

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