drupal7 创建form表单 并重定向提交路径同时使用get方式传递(drupal 简洁url)传参实例演示

来源:互联网 发布:uipath 国内类似软件 编辑:程序博客网 时间:2024/06/06 02:06
1、 指定创建form的函数,并传递参数$formhtml = drupal_render(drupal_get_form('create_form', 'get_name',a,b,c));  //介绍一下drupal_get_form($fucname,$vars)   param1 调用创建form的函数名     param2 传递过去的参数,每个参数使用,分割  2、创建create_form函数 function create_form($form_state, $args) {  //这里的$args 就是你传递过来的参数,  $callback_url = $args['build_info']['args'][0];     //get_name  $default_value = $args['build_info']['args'][1];    //a         $args['build_info']['args'][2]    //b   以此类推  $form['callback_url'] = array(     //创建一个隐藏域来保存form提交的路径    '#type' => 'hidden',    '#value' => $callback_url,  );  $form['username'] = array(         //创建一个异步查询    '#title' =>name,    '#type' => 'textfield',                        //字段类型    '#default_value' => $default_value,            //设置默认值    '#autocomplete_path' => 'ajax/'.arg(2),        //指定查询路径    '#size' => 22,                                  );  $form['submit'] = array(                      //创建form提交按钮    '#type' => 'submit',    '#value' => ucfirst('search'),    '#submit' => array('form_submit'),         //指定form提交函数  );  return $form;}3、 创建form提交函数 function form_submit($form, &$form_state) {    //1、drupal的简洁url传参    //拼接form提交路径  用隐藏域和username的值来拼接    $callback_url = $form_state['values']['callback_url'] . '/' . $form_state['values']['username'];   //重定向form路径    $form_state['redirect'] = array($callback_url);//2、get方式传参  $callback_url = $form_state['values']['callback_url'];  $args = array('query' => array('c'=>$form_state['values']['username']));  //重定向form路径    $form_state['redirect'] = array($callback_url,$args);}


原创粉丝点击