Drupal 7 - Passer des variables à un formulaire

Via la fonction drupal_get_form il est possible de passer des variables à notre formulaire custom.

//On ajoute la ou les variables à la suite de l'identifiant de notre formulaire
$form = drupal_get_form('mon_formulaire', $ma_variable_a_passer);

On les récupère ensuite dans la déclaration du formulaire :

function mon_formulaire($form, &$form_state) {
  //On récupère les variables dans un tableau d'arguments
  $ma_variable_a_recuperer = $form_state['build_info']['args'][0];
  ...
}

Même principe avec plusieurs variables :

// Passage des paramètres $var1 et $var2
$form = drupal_get_form('mon_formulaire', $var1, $var2);

Récupération :

function mon_formulaire($form,&$form_state) {
  $var1 = $form_state['build_info']['args'][0];
  $var2 = $form_state['build_info']['args'][1];
  ...
}

 

Contenus en rapport

Drupal 8 - rendre un formulaire dans un template

La form api de drupal est très puissante, mais pour jouer avec le markup html avec les #prefix et #suffix peut s'avérer rapidement complexe en plus d'être un peu sale au niveau du code.

Ajouter un commentaire

Ne sera pas publié
CAPTCHA
Désolé, pour ça, mais c'est le seul moyen pour éviter le spam...