У меня есть hook_form (), и я пытаюсь отправить данные в базу данных.
Когда генерируются параметры формы, она генерирует как <option value="foo">
Foo </option>
Я не пытаюсь получить значение параметра.
Я пытаюсь взять часть между <option>
, которая будет 'Foo'
Моя форма выглядит так:
/*
* Implentation of hook_form().
*/
function f25_favorites_form() {
$form['path_options'] = array(
'#type' => 'value',
'#value' => array('default' => t('Add a favorite'), 'foo' => t('Foo'), 'bar' => t('Bar')),
);
$form['path'] = array(
'#type' => 'select',
'#title' => t('Select Page'),
'#required' => TRUE,
'#weight' => '11',
'#options' => $form['path_options']['#value'],
);
$form[submit] = array(
'#type' => 'submit',
'#weight' => '1000000',
'#value' => t('Add')
);
return $form;
}
И это form_submit ():
/*
* Write Form data to database
*/
function f25_favorites_form_submit($form, &$form_state){
global $user;
$data = array(
'uid' => $user->uid,
'path' => $form_state['values']['path'],
'title' => $title,
'weight' => $weight,
'timestamp' => time(),
);
drupal_write_record('', $data);
}
Что я ожидаю
Мне кажется, что-то похожее на это:
'path' => $form_state['values']['path'],
Но вместо этого будьте примерно так:
'title' => $form_state['values']['path'][#value],