IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Valider les $_POST en masse par une fonction


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 30
    Points
    30
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 !

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 30
    Points
    30
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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;

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 30
    Points
    30
    Par défaut
    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 !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/09/2012, 15h10
  2. Réponses: 12
    Dernier message: 17/02/2010, 17h59
  3. Tracer les requêtes exécutées par une fonction PL/PgSQL
    Par scheu dans le forum Administration
    Réponses: 1
    Dernier message: 02/02/2009, 15h01
  4. Souci avec une formule par une fonction Selection.validation
    Par mennix dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 02/08/2007, 23h45
  5. tableau javascript ecrit par une fonction asp
    Par LineLe dans le forum ASP
    Réponses: 4
    Dernier message: 03/11/2003, 09h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo