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 14/09/2007, 19h32   #1
Futur Membre du Club
 
Inscription : juin 2004
Messages : 38
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 38
Points : 18
Points : 18
Par défaut Valider les $_POST en masse par une fonction

Bonjour à tous

Est-ce que c'est cohérant de faire ceci pour traiter des $_POST (environ 15 à 30)

Code :
1
2
3
4
5
$POST = array ( 'server', 'login', 'mdp' );
$NAMES = array ( 'ftp_server', 'ftp_user_name',	'ftp_user_pass' );
 
for ( $i = 0; isset( $_POST[ $POST[$i] ] ); $i++ )
	if ( $_POST[ $POST[$i] ] != '' ) $NAMES[$i] = $_POST[ $POST[$i] ];
J'ai beaucoup de super globales à traiter... Vous connaissez une meilleure solution ?



Merci D'avance !
Marshall_Mathers est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2007, 23h38   #2
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
J'ai pas bien saisi le but de ton code, si je ne me trompe, tu recuperes les variabels POST, et si elles sont définiés, tu les places dans un autre tableau?

Je vois pas trop l'intérêt de ce bout de code. Si ton but est de transformer les POST en super globales, pourquoi ne pas faire simplement:

Code :
1
2
3
4
5
$tab = array_keys($_POST);
for ($i=0;$i<count($tab);$i++) {
			${$tab[$i]} = $_POST[$tab[$i]];
 
}
Mais bon, peut etre n'ai je pas saisi ton but.
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2007, 13h22   #3
Futur Membre du Club
 
Inscription : juin 2004
Messages : 38
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 38
Points : 18
Points : 18
Code :
1
2
3
4
5
$POST = array ( 'server', 'login', 'mdp' ); // Champs du formulaire précedement envoyé.. (on a $_POST['server'], $_POST['login'] et $_POST['mdp'])
$NAMES = array ( 'ftp_server', 'ftp_user_name',	'ftp_user_pass' ); // Variables dans les quelle on va ranger les _POST vérifés (pour ensuite les traiter plus facilement)
 
for ( $i = 0; $i < count($POST) ; $i++ )
	if ( isset( $_POST[ $POST[$i] ] ) && $_POST[ $POST[$i] ] != '' ) $NAMES[$i] = trim( $_POST[ $POST[$i] ] );
Ca a l'air un peu compliqué aux premiers abords mais c'est simple...

C'est pour éviter d'avoir des :

Code :
1
2
3
4
if ( $_POST['server'] && $_POST['server'] != '' ) $ftp_server = trim($_POST['server']);
if ( $_POST['login'] && $_POST['login'] != '' ) $ftp_user_name = trim($_POST['login']);
if ( $_POST['mdp'] && $_POST['mdp'] != ''  ) $ftp_user_pass = trim($_POST['mdp']);
etc.
Marshall_Mathers est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2007, 13h56   #4
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
Ah c'est pour parser les variables vides, c'est bien ce qu'il m'avait semblé, meme si je comprends pas comment une variable vide peut te gener.

Admettons que tu en aies besoin, tu peux faire:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
$_POST['test']="allo";
$tab = array_keys($_POST);
 
	for ($i=0;$i<count($tab);$i++) {
 
 
		if(trim($_POST[$tab[$i]])!=''){${$tab[$i]} = trim($_POST[$tab[$i]]);}
 
	}
 
echo $test;
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2007, 23h02   #5
Futur Membre du Club
 
Inscription : juin 2004
Messages : 38
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 38
Points : 18
Points : 18
lol oui j'en ai besoin ^^

Enfin je vais passer à la version Beta de mon proget, donc je vais en profiter pour renommer les champs (de telle sorte a avoir des $_POST avec des variables que je pourrai traiter plus efficacement )

M/erci de ton aide !
Marshall_Mathers 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 21h01.


 
 
 
 
Partenaires

Hébergement Web