Мне нужно было настраиваемое поле, которое не могло быть предоставлено модулем основного профиля (список выбора, заполненный запросом SQL). Я смог успешно добавить поле с правильными параметрами; однако я не уверен, как обработать это новое поле после отправки.
Из того, что я понимаю, мне нужно написать функцию, которая обрабатывает мою вставку SQL, а затем вызвать эту функцию из кнопки отправки hook_form_alter.
На данный момент передается только имя поля, а не значение. И имя поля сериализуется и сохраняется в поле «данные» пользовательской таблицы. Я пытаюсь передать его в собственную колонку.
Вот мой код ...
//takes value and inserts it to account field
function accountselect_submitaccount() {
db_query( "INSERT INTO {user} (account)
VALUES {account_name}" );
}
Тогда ...
//call the above function using custom submit (I suspect this is the troubled area)
function accountselect_form_alter(&$form, $form_state, $form_id) {
if($form_id == 'user-register')
$form['#submit'][] = 'accountselect_submitaccount';
}