Php Drupal7在表单之间切换

Php Drupal7在表单之间切换,php,forms,drupal,drupal-7,Php,Forms,Drupal,Drupal 7,我是drupal新手,需要创建一个登录表单,我已经成功地完成了。但当我登录时,我希望表单切换到另一个表单,您可以在其中编辑您的详细信息 我不知道如何在表格之间切换 <?php /** * Implements hook_help. * * Displays help and module information. * * @param path * Which path of the site we're using to display help * @param

我是drupal新手,需要创建一个登录表单,我已经成功地完成了。但当我登录时,我希望表单切换到另一个表单,您可以在其中编辑您的详细信息

我不知道如何在表格之间切换

<?php

/**
 * Implements hook_help.
 *
 * Displays help and module information.
 *
 * @param path 
 *   Which path of the site we're using to display help
 * @param arg 
 *   Array that holds the current path as returned from arg() function
 */

function login_kms_help($path, $arg) {
  switch ($path) {
    case "admin/help#login":
      return '<p>'.  t("Creates login module") .'</p>';
      break;
  }
} 

/**
 * Implements hook_block_info().
 */
function login_kms_block_info() {
   $blocks['login_kms'] = array(
    'info' => t('Login KMS'), //The name that will appear in the block list.
    'cache' => DRUPAL_CACHE_PER_ROLE, //Default
  );
  return $blocks;
}

function login_kms_block_view($delta = '') {
  $block = array();
  if($delta == 'login_kms') {
    $block['subject'] = 'Login';
    $block['content'] = drupal_render(drupal_get_form('login_kms_form_mode0'));
  } else if($delta == 'login_kms'){
    $block['subject'] = 'Edit';
    $block['content'] = drupal_render(drupal_get_form('login_kms_form_mode1'));
  }
  return $block;
}

function login_kms_form_mode0() {
  $form['username'] = array(
    '#type' => 'textfield',
    '#title' => t('Username:'),
  );
   $form['password'] = array(
    '#type' => 'password',
    '#title' => t('Password:'),
  );
  $form['Log in'] = array(
    '#type' => 'submit',
    '#value' => t('Log in'),
  );
  return $form;
}

function login_kms_form_mode1(){
  $form['username'] = array(
    '#type' => 'textfield',
    '#title' => t('mode1'),
  );
}

function login_kms_form_submit($form, &$form_state) {
    $mysql_user = $form_state['values']['username'];
    $mysql_pass = $form_state['values']['password'];
//  drupal_set_message(t($mysql_pass)); 
// some logic

}  
您只需使用()将登录的用户重定向到其他表单

global $user;
if(!empty($user->uid) || $user->uid > 0)
{
    drupal_goto("my/new/page");
}

希望这能奏效。。。第一种方法是使用drupal_goto(“我的路径”)。 第二种,也是更“正确”的用法是使用$form_state['redirect']或$form['redirect'],如下所示

function login_kms_form_submit($form, &$form_state) {
$mysql_user = $form_state['values']['username'];
$mysql_pass = $form_state['values']['password'];
//  drupal_set_message(t($mysql_pass)); 
// some logic
$form_state['redirect'] = 'user/to_the_new_form';
}