2010-06-29 6 views
1

Dans un module personnalisé Drupal, je souhaite conditionner $ form ['link_wrapper'] à une soumission réussie du formulaire, mais ce n'est pas une manière très efficace de le faire. Quelqu'un peut-il suggérer une meilleure approche.Drupal - ajout d'un élément de formulaire à une soumission réussie

function my_function_my_form($form_state){ 

    //echo "-" . $form_state['post']['op'] ."-"; 
    //die(); 

    global $base_root; 
    $form = array(); 

     $form ['query_type'] =array (
     '#type' => 'radios', 
     '#title' => t('Select from available Queries'), 
     '#options' => array(
      "e_commerce_orders" => t("Query1"), 
      "new_orders" => t("Query2"), 
      "cancelled_orders" => t("Query3")), 
     '#required' => TRUE, 
     ); 


    // only show link when submitted  
    if($form_state['post']['op'] == 'Submit') 
    { 
     $form['link_wrapper'] = array(  
       '#prefix' => '<div>', 
       '#value' => l("Click to View file"),    
       '#suffix' => '</div><br><br>', 
      ); 
    } 

    // add submit button 
    $form['submit'] = array(
     '#type' => 'submit', 
     '#value' => t('Submit')); 

    return $form; 
} 
+0

Donc, vous voulez soumettre, et montrer le formulaire qui a été soumis avec un nouveau champ? –

Répondre

0

Avez-vous essayé de définir votre condition dans le crochet de validation?

Quelque chose comme:

function my_function_my_form_validate($form_state){
//some condition is true
$form_state['something'] = TRUE;
}

http://api.drupal.org/api/function/hook_validate/6

C'est rude. Je ne me souviens pas des arguments pour hook_validate