Page 1 sur 1

Créer une seule fonction pour tester variables formulaire ?

Posté : 02 avr. 2006, 23:15
par leroimarco
Bonjour à tous,

Voilà mon problème. J'ai crée plusieurs fonctions relativement basiques pour créer des formulaires selon les besoins, du style :

Code : Tout sélectionner

function FormInput ($libelle, $nom, $taille, $longueurmax, $obligatoire) { echo '<input name="' . $name . '" size="' . $taille . '" maxlength="' . $longueurmax . '">' ...... '; }
Dans ces fonctions, j'ai un argument qui prend la valeur 1 si le champ est obligatoire et 0 s'il peut être vide.

Ce que j'aimerais pouvoir créer, c'est une (et une seule) fonction qui puisse tester bien sur si le formulaire a été validé (ça je sais faire) mais qui puisse récupérer la valeur de chacun des champs et indiquer une erreur en fonctions des champs obligatoires non remplis.

Dans un script classique, ça ne pose pas de problème mais comment pouvoir créer cette fameuse unique fonction capable de récupérer tous ces paramètres ??? utilisations de variables globales ? Bref, je ne vois pas trop comment m'y prendre.
Si vous avez une petite idée, merci d'éclairer ma lanterne. Je ne cherche pas de solution toute faite mais juste un commencement de début de solution :)

Merci d'avance !
A bientot,
JM

Posté : 03 avr. 2006, 00:31
par Cyrano
:idea: Crée un tableau (array) dans lequel tu stoques les informations nécessaires à chaque fois que tu ajoutes un élément à ton formulaire : pour la validation, il te suffira par la suite de créer ta fonction qui travaillera en boucle sur cet unique tableau.

Posté : 03 avr. 2006, 08:47
par leroimarco
Merci à toi Cyrano pour la qualité et la rapidité de ta réponse :merci:

Je vais essayer ça. Donc, si je comprends bien, chaque appel de fonction qui ajoute un élément de formulaire ajoute un élément dans l'array. Ma fonction de validation boucle sur ces éléments. C'est ça ? Mais comment est récupéré ce tableau dans la partie validation de formulaire ?

Posté : 03 avr. 2006, 09:08
par Cyrano
enregistre ce tableau dans une variable de session par exemple

Posté : 03 avr. 2006, 09:13
par leroimarco
Merci de ton aide, je vais essayer de concrétiser tout ça :wink:

Par contre, est-ce que ça pose un problème si j'utilise déjà une session étant donné que mon formulaire peut très bien être déjà dans un espace sécurisé ?

:merci:

Posté : 03 avr. 2006, 22:29
par leroimarco
C'est encore moi ! :D

Au lieu de passer par une variable de session, est-il possible de passer mon tableau qui contient mes champs dans $_POST, en même temps que la validation du formulaire ?