重定向到表单提交并使用新页面中的表单数据

时间:2014-04-07 06:01:25

标签: php forms drupal drupal-7 drupal-modules

如何在表单提交中重定向drupal 7,我需要在下一个重定向页面中使用提交的数据,但是video_subtitle_view下面的函数不打印任何内容

我该怎么做

/**
 * Implements hook_menu()
 * 
 */ 
function video_subtitles_menu() {
  $items = array();
  $items['player/video_subtitle/view'] = array(
     'page callback' => 'video_subtitle_view',
     'access callback' => 'user_access',
     'access arguments' => array('administer video_subtitles status'),
  );
  return $items;
}

    function video_subtitle_view($form, &$form_state){
    //    print 'video_subtitle_view';
        print_r($form);
        print_r($form_state);
    } 

function video_upload_subtitles_form_submit($form, &$form_state) {

     $form_state['redirect'] = 'player/video_subtitle/view';
//     $form_state['redirect'] = array(
//            'player/video_subtitle/view',
//             array(
//                    'query' => array(
//                    'form' => $form,
//                    'form_state' => &$form_state,   
//                   ),
//              ),
//      );

}

function video_subtitle_view($form, &$form_state){
//    print 'video_subtitle_view';
    print_r($form);
    print_r($form_state);
}

我需要将表单数据作为参数??

传递

1 个答案:

答案 0 :(得分:1)

在DRUPAL 7中,像这样使用它。

function video_subtitles_menu() {
$items = array();
$items['player/video_subtitle/view'] = array(
'page callback' => 'drupal_get_form',
'page arguments' => array('video_subtitle_view_form'),
'access callback' => 'user_access',
'access arguments' => array('administer video_subtitles status'),
);
return $items;
}


function video_subtitle_view_form($form, &$form_state){
// form elements
return $form;
}


function video_subtitle_view_form_submit($form, &$form_state){

print_r($form['values']);
//use session here
$_SESSION['data']=$form['values'];
drupal_goto('whereever you want');
}

下一页从Session

中检索数据
print_r($_SESSION['data']);

希望这对你有所帮助。