将变量发送到Drupal 6中的用户配置文件

时间:2011-05-29 23:12:56

标签: php drupal drupal-6

我正在为Drupal开发一个模块,它提供一个登录表单,并在提交用户cURL后使用其他网站上的这些凭据登录。

如果一切顺利,模块会将用户重定向到他们的个人资料,并且应该提供获取的信息cURL。这是出问题的地方。

我要做的是通过用户名获取$account变量。这都在module_name_form_submit函数中:

$account = user_load(array('name' => check_plain($user)));

然后将我想要显示的数据附加到它:

$account->content['module_name'] = array(
    '#title' => t('Module Title'),
    '#values' => get_info()
    );

如果我在重定向之前执行了print_r,果然,数据就在那里。但重定向后:

$form_state['redirect'] = "users/{$user}";

我无法访问相同的数据。所以问题是,如何以永久的方式设置该变量并在用户配置文件页面中重定向后访问它? (我试图避免会话)。

提前致谢: - )

2 个答案:

答案 0 :(得分:1)

如何使用variable_set($ name,$ value);根据你的问题:

variable_set('module_name_variable', $account);

当您需要访问数据时,使用variable_get($ name,$ default);根据你的问题:

variable_get('module_name_variable');

如果它对您有用,请告诉我。

由于

答案 1 :(得分:0)

也许您可以使用value form element将用户值添加到表单中。

$form['userdata'] = array('#type' => 'value', 
                     '#value' => $user_load(array('name' => check_plain($user)));

我认为这可能会以'drupalish'的方式做你正在寻找的东西。

希望它有所帮助,祝你好运!