Drupal 7 hook_form_FORM_ID_alter()提交

时间:2012-03-23 11:38:51

标签: drupal-7

我正在开发自定义模块并使用 hook_form_FORM_ID_alter 方法。我提供了与块的特定页面的配置可见性设置相同的选项。我还为我的模块创建了一个数据库表。我不知道用户选择的选项在提交时应该如何存储在我的表中,以及如何保留为特定菜单链接选择的选项。我在菜单项编辑表单上添加了此功能。

1 个答案:

答案 0 :(得分:4)

这就是你要找的东西:

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();
}

这显然是一个非常基本的示例,但它向您展示了如何向现有表单添加提交处理程序,如何添加额外字段,以及如何在提交处理程序中获取该字段的数据。