Drupal hook_user用于注册和提交

时间:2010-09-21 16:11:17

标签: drupal hook switch-statement registration

当Drupal完成注册时,我需要在其他地方发送注册详细信息。 我找不到交换机的正确变量。我尝试了这个,但它不起作用。此功能在我的模块“externalnewsletter”中。

function externalnewsletter_user($op, &$edit, &$account, $category = NULL) {
    if ($op == 'register' && $category == 'submit') {
        // do stuff...
    }
}

感谢

3 个答案:

答案 0 :(得分:2)

/**
* A user account was created.
  Try this this function called when user is just created
 * The module should save its custom additions to the user object into the
 * database.
 *
 * @param $edit
 *   The array of form values submitted by the user.
 * @param $account
 *   The user object on which the operation is being performed.
 * @param $category
 *   The active category of user information being edited.
 *
 * @see hook_user_presave()
 * @see hook_user_update()
 */
function hook_user_insert(&$edit, $account, $category) 

答案 1 :(得分:0)

你可以使用Drupal 6的触发器和动作来设置它而不需要太多编码。首先创建一个动作,如果你愿意,你可以在这里放置自定义代码。然后你可以去管理|网站建设|触发器,在“用户”选项卡中,您将找到创建帐户的触发器。

这里有一个编写动作的指南:http://drupal.org/node/172152

答案 2 :(得分:0)

我明白了。我需要像这样寻找“插入”:

function externalnewsletter_user($op, &$edit, &$account, $category = NULL) {

     // user registration ---------------------->
     if ($op == 'insert') {
         // do stuff...

     }

}

现在的问题是我需要在Drupal使用MD5之前未加密输入的密码。我需要所有其他$ _POST变量,因为我在用户配置文件中添加了一些字段。当我print_r($ _ POST);它只是打印“1”。 如何从表单中获取$ _POST变量或以某种方式获取所有其他变量?

感谢