среда, 21 марта 2012 г.

Многостраничные формы в друпал (Multisteps forms)

Чтобы не забыть как это делать при оформлении модулей, добавляю код, который нашел на другом сайте:

function mymodule_myform($form_state) {
if (empty($form_state['storage']['values'])) {
$form['firstname'] = array(
'#type' => 'textfield',
'#title' => t('First Name'),
'#size' => 40,
'#required' => TRUE
);
} else {
$form['lastname'] = array(
'#type' => 'textfield',
'#title' => t('Last Name'),
'#size' => 40,
'#required' => TRUE
);
}
}
Function mymodule_myform_submit($form, &$form_state) {
if (empty($form_state['storage']['values'])) {
// if there is no previous values redraw for second step
$form_state['storage']['values'] = $form_state['values'];
$form_state['rebuild'] = true;
} else {
// Form is on the second step, process the data here…
$firstname = $form_state['storage']['values'][‘firstname’];
$firstname = $form_state['storage']['values'][‘lastname’];
….
}
}

Комментариев нет:

Отправить комментарий