Отправить переменную в профиль пользователя в Drupal 6 - PullRequest
1 голос
/ 30 мая 2011

Я разрабатываю модуль для 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 ]

1 голос
/ 30 мая 2011

Как насчет использования variable_set ($ name, $ value);По вашему вопросу:

variable_set('module_name_variable', $account);

Когда вам нужен доступ к данным, используйте variable_get ($ name, $ default);По вашему вопросу:

variable_get('module_name_variable');

, пожалуйста, дайте мне знать, если это работает для вас.

Спасибо

0 голосов
/ 30 мая 2011

Может быть, вы могли бы использовать элемент формы value , чтобы добавить пользовательское значение к вашей форме.

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

Я думаю, что это может сделать то, что вы ищете в "drupalish"путь.

Надеюсь, это поможет, удачи!

...