OVH Cloud OVH Cloud

(formulaire dynamique) dynamique

4 réponses
Avatar
fafien
Mon problème est le suivant :

j'ai un formulaire où je ne connais pas le nombre de champs à
l'avance.
En fait j'ai un bloc de champs qui sera répété un certain nombre de
fois spécifié en paramètre au moment de l'appel de la page.

ça ressemble à peu près à ça :

nom1
prenom1
adresse1

nom2
prenom2
adresse2

etc...

J'aimerais savoir comment traiter les variables de ce formulaire une
fois qu'il aura été envoyé, et aussi quels noms donner à mes champs.
Y'a-t-il possibilité d'utiliser des pseudo-tableaux en html ?

Je vais prendre un exemple pour être plus clair :

Prenons par exemple les champs nom : j'aurai les champs nom1, nom2,
nom3, nom4 etc... Mais je sais pas combien j'en aurai !. Le nombre de
champs nom est passé en paramètre à la page.

Donc au moment de traiter mes variables, je vais me retrouver avec des
noms de variables non déterminés à l'avance. Je peux très bien avoir
juste $nom1 à traiter comme je peux avoir $nom1, $nom2, $nom3 etc...

4 réponses

Avatar
CrazyCat
fafien wrote:
j'ai un formulaire où je ne connais pas le nombre de champs à
l'avance.
J'aimerais savoir comment traiter les variables de ce formulaire une
fois qu'il aura été envoyé, et aussi quels noms donner à mes champs.


essaye un truc du genre:
foreach ($_POST as $key=>$value) {
traitement...
}
$_POST contient l'ensemble des données postées, et la boucle permet de
travailler sur chaque couple $key/$value avec:
$key = le nom de ta variable
$value = sa valeur
--
CrazyCat from C-P-F.org

Avatar
Leonard Wauters
On 21 Aug 2003 09:41:53 GMT, (fafien) wrote:

Mon problème est le suivant :

j'ai un formulaire où je ne connais pas le nombre de champs à
l'avance.
En fait j'ai un bloc de champs qui sera répété un certain nombre de
fois spécifié en paramètre au moment de l'appel de la page.

ça ressemble à peu près à ça :

nom1
prenom1
adresse1

nom2
prenom2
adresse2

etc...

J'aimerais savoir comment traiter les variables de ce formulaire une
fois qu'il aura été envoyé, et aussi quels noms donner à mes champs.
Ben les noms des champs tu les génère à la volée dans ton script php,

dans la boucle qui fait des echo de <input type ...>.

Je vais prendre un exemple pour être plus clair :

Prenons par exemple les champs nom : j'aurai les champs nom1, nom2,
nom3, nom4 etc... Mais je sais pas combien j'en aurai !. Le nombre de
champs nom est passé en paramètre à la page.

Donc au moment de traiter mes variables, je vais me retrouver avec des
noms de variables non déterminés à l'avance. Je peux très bien avoir
juste $nom1 à traiter comme je peux avoir $nom1, $nom2, $nom3 etc...


Puis là tu fais une boucle sur ton tableau $_POST ou $_GET en
"inventant" les noms de variables dans une boucle...
for($i...
{
$arg= "nom" . $i ;
$_POST[$arg]...
}

Léo.

Avatar
Michel BONZI
Bonjour,
Utilise des tableaux :
ex :
<?php
$nb; // Nombre de champs
for($i=0;$i<$nb;$i++){
print '<input name="nom['.$i.']"; ?>" value="'.$nom[$i].'" type="text"
size="30">';
}
?>
va créer 10 champ nom numéroté de 0 à 9 soit nom[0], nom[1] ....
Cela fonctionne très bien si tu n'à pas à traiter les champs avec
JavaScript.
Pour le traitement de submit, tu traite les champs avec le tableau $nom[].
Salutations
---
Michel BONZI



--
---
Michel BONZI

Avatar
Guillaume Bouchard
fafien wrote:

j'ai un formulaire où je ne connais pas le nombre de champs à
l'avance.
Y'a-t-il possibilité d'utiliser des pseudo-tableaux en html ?


Pseudo-tableau non désolé, je fais pas de pseudo, par contre des vrai
tableau, c'est faisable.

Appelle tes champs nom[] prenom[] ...

--
Guillaume.