Auto_form : il fait tout le sale boulot ! v0.1

Il y a quelque temps, j'ai eu besoin de gérer des fichiers configs appelés à évoluer voire à changer presque complètement et je trouvais assez rébarbatif de me taper systématiquement le boulot des formulaires à la main... (euphémisme inside).

J'ai donc pris mon petit crayon, mon bloc notes et j'ai réfléchi au meilleur moyen de boucler définitivement le problème sans avoir à y revenir par la suite.
Comme précédemment je suis parti d'un cahier des charges:

 

 

  • le formulaire généré doit l'être sans modifications de ma part
  • le formulaire doit évoluer automatiquement selon l'évolution des données stockées dans la config
  • le formulaire doit adapter son contenu en fonction du type de données stockée
  • le formulaire doit être capable de sauvegarder tout seul les données dans le fichier de config
  • le format de ce fichier doit être logique, lisible et surtout, ne doit nécessiter aucun traitement particulier d'extraction
  • enfin, le module de génération de formulaire et de gestion des données doit être facilement utilisable et portable sur d'autres projets sans modification majeure

 

 

 

 



Auto_form est un fichier php qui se charge de générer automatiquement un formulaire complet à partir des données d'un tableau.
Ce tableau peut, par exemple, être défini dans un fichier de configuration qu'il suffit d'inclure avant d'appeler auto_form.

Chaque modif du fichier de configuration modifie automatiquement le formulaire généré: ainsi, si on ajoute des données, qu'on les modifie, qu'on en supprime... le formulaire est toujours adapté au contenu.

Les éléments du formulaire on tous des id et classes individuels qui permettent de les cibler directement.
Les parties du formulaire s'adaptent au type de donnée: un booléen donne une case à cocher, un string donne un input text (sans jeu de mot foireux avec string et input, merci ) etc
On peut configurer certains aspects via une variable de configuration.

un deuxième fichier, auto_form2file.php, se charge de gérer les données du formulaire lorsqu'on les envoie:
il récupère les données, les normalise puis les stocke sous forme de variables dans le fichier config, le tout automatiquement.

Attention, je n'ai pas encore implémenté la sécurisation des données posts.

Les variables de configuration de ces deux fichiers permettent d'en affiner le résultat et de les adapter sans modification du code à un peu tout les types de projets.

 

 


Voyez les fichiers eux-mêmes pour plus d'infos, c'est assez limpide
le zip contient :

 

 

 

  • auto_form.php et auto_form2file.php
  • index.php qui est la page d'appel qui contiendra le formulaire (auto_form est simplement appelé via un include )
  • action_page.php qui est la page devant traiter les données et dans laquelle on se contente d'inclure auto_form2file.
  • un fichier config.php contenant l'array de stockage
  • un fichier txt de documentaion (léger)

 

Le tout est largement commenté et fonctionne.

 

Pour le  ZIP c'est par là et pour  la démo, c'est ici...

Amusez-vous bien, c'est cadeau ! N'hésitez pas à commenter...

 

❝ 2 commentaires ❞

1  flop25 le

Bonjour
pas mal. Ca me plait pour Piwigo : car cela pourrait permettre à des gens qui ont peu de connaissances de faire une page de config pour leur thème.

 
2  Bronco le

Merci
Je n'ai pas regardé le fonctionnement de Piwigo, mais dans l'absolu, auto_form est très adaptable.
Il s'agit encore d'un début et si vous voyez des améliorations, n'hésitez pas

 

Fil RSS des commentaires de cet article

✍ Écrire un commentaire

Inutile de poster un commentaire à la con pour vous faire de la pub, ce sera filtré et dégagé direct...

Quelle est la dernière lettre du mot rocxxw ?