1 drupal-7
我正在开发一个自定义模块,并使用了hook_form_FORM_ID_alter方法。我为特定页面提供了与块的配置可见性设置相同的选项。我还为模块创建了一个数据库表。我不知道提交时如何将用户选择的选项存储在我的表中,以及如何保留为特定菜单链接选择的选项。我已经在菜单项编辑表单中添加了此功能。
您正在寻找这样的东西:
function MYMODULE_form_alter(&$form, &$form_state, $form_id) {
$form['my_val'] = array(
'#type' => 'textfield',
'#title' => 'Some Text'
);
$form['#submit'][] = 'MYMODULE_my_form_submit';
}
function MYMODULE_my_form_submit(&$form, &$form_state) {
$val = $form_state['values']['my_val'];
db_insert('my_table')->fields(array('val' => $val))->execute();
}
Run Code Online (Sandbox Code Playgroud)
显然,这是一个非常基本的示例,但是它向您展示了如何向现有表单中添加提交处理程序,如何添加额外的字段以及如何在提交处理程序中获取该字段的数据。