获取下拉列表的选定值

时间:2013-06-18 06:04:20

标签: drupal

我尝试在Drupal(7)中获取select的选定值,但是我的hook_submit()中select的值总是为空: !

在我的代码下面:

<?php
function gestionvideos_players_form() {
//I get my list of players from my database
$aPlayers = EasyVod_db::get_players();
    $options = array();
    if( empty($aPlayers) ) {
        $options[] = "no available player"; 
    }else{
        foreach( $aPlayers as $player ){
            $options[$player->iPlayer] = ucfirst($player->sName);
        }
    }

    $form['gestionvideos_player'] = array(
      '#type' => 'fieldset',
      '#title' => t('Integration par defaut des videos'),
      '#description' => t('Selection du player par defaut : '),
    );
    $form['gestionvideos_player']['selectplayer'] = array(
      '#type' => 'select',
      '#options' => $options,
    );
    $form['gestionvideos_player']['submit'] = array(
      '#type' => 'submit',
      '#value' => t('Choisir ce player'),
    );
    return $form;
}

function gestionvideos_players_form_submit($form, &$form_state){

  drupal_set_message("test ".$form_state['values']['selectplayer']);
  //I set my player in my session variable
  $oPlayer = EasyVod_db::get_player( intval($form_state['values']['selectplayer']) );
  $_SESSION['player'] = $oPlayer ->player;
}
?>

我真的很感激一些帮助,因为我真的不明白它不起作用......

1 个答案:

答案 0 :(得分:0)

你有没有尝试过

$ form ['#tree'] = true;

在表单构建器函数中

然后尝试转储:

$ form_state [ '值'] [ 'gestionvideos_player'] [ 'selectplayer']