匿名用户表单提交Drupal 7

匿名用户表单提交Drupal 7

问题描述:

我有一种情况,在做基本注册后,用户被重定向到一个页面,他需要填写一个小表单。匿名用户表单提交Drupal 7

我瞄准执行hook_user_inserthook_menu做这样的事情

function registration_user_insert(&$edit, $account, $category){ 
drupal_goto('splan/'.$edit['uid']); 
} 

function registration_menu() { 
$items['splan/%'] = array(
'title' => 'Select a Plan', 
'page callback' => 'drupal_get_form', 
'page arguments' => array('selectplan_form'), 
'access callback' => TRUE, 
'type' => MENU_CALLBACK 
); 
return $items; 
} 

在selectplan_form我将定义我的新形式,然后用UID我会保存数据到用户表。

现在发生的事情是在提交基本用户注册表单后重定向到splan/uid,但我也收到以下错误。

You are not authorized to access this page. 

现在我改变了允许anony的权限。用户创建和编辑webform,但问题仍然存在。

请帮忙!!!!!!!!

尝试删除'access callback' => TRUE,并添加'access arguments' => array('access content'),

也许你忘了清除缓存?

在用户注册之后,您所指的表单是否必须填写?如果是这样,那是一个有点棘手的情况。无论哪种方式,将一个drupal_goto放入user_insert挂钩将会中断注册过程。如果您的表单不需要先注册用户,那么您应该简单地修改注册表单,以包含表单上的任何额外字段。为此,您需要实现一个hook_from_alter():

http://api.drupal.org/api/drupal/modules--system--system.api.php/function/hook_form_alter/7