Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/09/2007, 13h17   #1
Membre habitué
 
Homme Mickael
Webmaster
Inscription : avril 2007
Messages : 224
Détails du profil
Informations personnelles :
Nom : Homme Mickael
Localisation : France

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : avril 2007
Messages : 224
Points : 136
Points : 136
Par défaut Valider un formulaire avec plusieurs fois la même variable

Bonjour,

Dans une page de mon site, j'utilise une boucle qui liste les rubriques et catégories du membre. Sur cette même page, ont peut modifier leur affichage dans le menu.

Mon ignorance est la suivante :

La boucle genere la liste des rubrique qui ont tous la même variable; var1 par exemple. Dans mon cas, il y a un formulaires par entrée, donc j'entre le numéro de position et je valide au fur et à mesure. Je trouve ca pas très confortable.

Je voudrais que le membre puissent valider tous les champ à la fois. Mais comme ils ont tous la même variable var1 je ne sais pas comment les récuperer et les traiter un par un, puisque php va uniquement traiter la derniere entrée, entré.

Je ne sais pas si je suis clair..

Voici un petit screenshot :

Seta-san est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 14h53   #2
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Il faut que tu utilises des tableaux en déclarant tes input avec un nom suivi de crochets
Dans ta page de traitement derrière tu parcours tes tableaux et tu récupères ainsi tes valeurs.

Un truc dans le genre :

Code :
1
2
3
4
5
6
for($i = 0 ; $i < count($_GET['var1']) ; $i++)
{
   $var1temp = $_GET['var1'][0];
   $var2temp = $_GET['var2'][0];
   ...
}
(c'est juste pour donnée l'idée générale...)
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 15h44   #3
Membre habitué
 
Homme Mickael
Webmaster
Inscription : avril 2007
Messages : 224
Détails du profil
Informations personnelles :
Nom : Homme Mickael
Localisation : France

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : avril 2007
Messages : 224
Points : 136
Points : 136
Merci ! Je n'ai jamais eu l'occasion d'utiliser une boucle for. Je vais m'instruire et essayer. Je vous tien au courant.
Seta-san est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 17h20   #4
Membre habitué
 
Homme Mickael
Webmaster
Inscription : avril 2007
Messages : 224
Détails du profil
Informations personnelles :
Nom : Homme Mickael
Localisation : France

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : avril 2007
Messages : 224
Points : 136
Points : 136
Voila, après un peu de lecture et quelques essais, j'ai pu réaliser un code fonctionnel sur une page test.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
if($_POST['nom_menu']);
$nom_menu = $_POST['nom_menu'];
 
if(isset($_POST['position_menu']));
$position_menu = htmlentities($_POST['position_menu'], ENT_QUOTES);
 
 
for($i = 0 ; $i < count($_POST['nom_menu']) ; $i++)
{
    $nom_menu2 = $_POST['nom_menu'][$i]; 
    echo $nom_menu2;
 	echo ': ';
 
	$position_menu2 = $_POST['position_menu'][$i]; 
    echo $position_menu2;
    echo '<br />';
 
}
Il ne manque plus qu'a y ajouter ma requêtes SQL.

Est ce que ce code peut être mieux fait ? IL y à t'il des choses inutiles ?
Seta-san est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2007, 08h55   #5
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Euh... si tu mets des point-virgules juste après les conditions de tes if ça revient à ne rien faire dans le cas où la condition est vérifiée donc ça sert à rien.

Code :
1
2
3
 
if($_POST['nom_menu']);
$nom_menu = $_POST['nom_menu'];
Ca revient à faire un test sur $_POST['nom_menu'], à ne rien faire dans le cas où c'est vrai, puis à toujours exécuter la deuxième ligne.

Le mieux aussi c'est d'utiliser isset pour tester la présence d'une variable.

Et dans la cas où la variable n'est pas définie il n'y a pas d'initialisation.
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h18.


 
 
 
 
Partenaires

Hébergement Web