如何实现学生和教师两种类型的注册?我需要两种类型的注册,一种是教师的,一种是学生的。两者都是不同的注册,并且都有不同的角色。这在Drupal中是可能的吗?我还需要注册学生没有行政审批,但对于教师注册,行政审批是必需的。我如何在Drupal6中实现这一点?
发布于 2012-01-22 23:05:29
在自定义用户注册表单中,在提交钩子上添加一个具有角色类型(学生,教师).Then的选择框字段,如下所示。
function add_student_form_submit($form,&$form_state) { $fields = array();$fields‘’is_new‘= true;$fields’‘name’=$form_state‘’values‘;$fields’‘pass’=$form_state‘’values‘;$role_type =$form_state’‘values’;//将用户添加到相应的角色$fields‘’roles‘= array($role_type) //在这里可以实现角色是教师然后设置// want.If = 0,else status =1 if($role_type ==’$role_type‘) $fields'status’= 1;else $fields'status‘= 0;// $user = user_save(drupal_anonymous_user(),$fields);//这在D7 $user = user_save('',$fields);//我非常确定这就是D6中的工作原理}
如果用户是老师,您应该访问http://localhost/domain_name/admin/user/user。在这里,您可以过滤非活动用户并激活它们。
发布于 2012-02-02 19:49:42
嘿,你可以使用下面的模块来创建多级注册。
http://drupal.org/project/content_profile http://drupal.org/project/autoassignrole
以上模块帮助您在站点中创建多级注册表。从内容配置文件,您可以创建表单,也可以自动分配角色给学生。
发布于 2012-01-22 05:51:11
据我所知,drupal没有为拥有多种类型的注册表单提供任何机制。但是,您可以很容易地从头开始创建自己的注册表。您真正需要的只是用来创建新用户的user_save函数。请参阅下面的示例代码作为form_submit钩子的一部分
function add_student_form_submit($form, &$form_state) {
$fields = array();
$fields['is_new'] = true;
$fields['name'] = $form_state['values']['user_name'];
$fields['pass'] = $form_state['values']['pass'];
$fields['status'] = 1;
// $user = user_save(drupal_anonymous_user(), $fields); //This works in D7
$user = user_save('', $fields); //pretty sure this is what works in D6
}使用它,您可以为每个表单创建所需的任何自定义逻辑
https://stackoverflow.com/questions/8951470
复制相似问题