Concaténation $_POST

pitxu Messages postés 708 Statut Membre -  
 flottin -
Bonjour,

existe-t-il un moyen plus simple de concaténer :

<?
if ((isset($_POST['var1']) && !empty($_POST['var1']))
&& (isset($_POST['var2']) && !empty($_POST['var2']))
&& (isset($_POST['var3']) && !empty($_POST['var3'])))
?>
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. flottin Messages postés 1 Statut Membre
     
    tu peux faire une boucle sur ton tableau $_POST :

    function isPost()
    {
    foreach ($_POST as $k => $v)
    {
    if (empty($v))
    {
    return false;
    }
    }
    return true;
    }

    C'est pratique si tu as un grand nombre de valeur dans $_POST. Cette fonction retourne false si un des éléments du tableau $_POST est vide. L'appel de cette fonction se fait comme ça :
    if (isPost())
    {
    .....
    }

    Je ne l'ai pas testé, mais c'est l'idée...
    http://www.neotek.fr florent lottin
    0
  2. pitxu Messages postés 708 Statut Membre 95
     
    Très bonne idée !!!

    Je ne pensais pas du tout à une fonction :) Merci.
    0
  3. pitxu Messages postés 708 Statut Membre 95
     
    Impossible car pour joindre une variable à une fonction isPost($valeur), $valeur doit être déclaré.

    ça reviendrait à

    if (isset($valeur)) {
    if(isPost($valeur)) {
    ...
    }
    }

    donc pas intéressant :D
    0
    1. flottin
       
      oui effectivement l'idée était là mais la fonction n'est pas terrible :
      il faut passer un tableau de variables quand même à la fonction :

      $aVar = array('var1', 'var2', 'var3' ...);
      isPost($aVar);

      function isPost($aVar){
      foreach($aVar as $k => $v) {
      if !((isset($_POST[$v]) && !empty($_POST[$v])){
      return false;
      }
      }
      return true;
      }
      0