0
我正在开发自定义模块并使用hook_form_FORM_ID_alter方法。我已经提供了与特定页面的块配置可见性设置相同的选项。我也为我的模块创建了一个数据库表。我不明白用户选择的选项在提交时应如何存储在我的表格中,以及如何保留为特定菜单链接选择的选项。我已经在菜单项编辑窗体中添加了这个功能。Drupal 7 hook_form_FORM_ID_alter()提交
我正在开发自定义模块并使用hook_form_FORM_ID_alter方法。我已经提供了与特定页面的块配置可见性设置相同的选项。我也为我的模块创建了一个数据库表。我不明白用户选择的选项在提交时应如何存储在我的表格中,以及如何保留为特定菜单链接选择的选项。我已经在菜单项编辑窗体中添加了这个功能。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();
}
这显然是一个非常简单的例子,但它表明你如何添加提交处理程序,以现有的形式,如何添加一个额外的字段,以及如何在提交处理程序中获取该字段的数据。
谢谢我得到了,但对于Drupal 7我认为提交函数应该是MYMODULE_submit($ form,&$ form_state) – 2012-03-27 05:54:50