如何在Drupal webform提交后修改字段值

时间:2010-07-05 13:20:51

标签: php email drupal drupal-webform

我正在尝试修改提交字段的值,使用php(服务器端)通过邮件发送并写入db:

hook_form_alter(&$form, &$form_state, $form_id)

更改值看起来很容易,但在更改后没有任何反应。胡克的作品。

2 个答案:

答案 0 :(得分:1)

hook_form_alter只能在之前操作表单

  

在表单之前执行更改   呈现。

查看this API comment,其中有人提供了一个很好的示例,说明在提交表单后如何做某事。您还需要触发_submit($form, &$form_state)操作(来自链接点的给定帖子)。你可以在那里做所有需要的改变。可以在API的examples中找到更多描述

答案 1 :(得分:0)

First add a submit action in hook_form_alter and second alter the form_state value in form     submission. 

function custom_form_alter(&$form, &$form_state, $form_id) {
    if ($form_id == 'your-webform-id') {
      $form['#submit'][] = 'xyz_form_submit';
    }
}

function xyz_form_submit($form, &$form_state) {
// here you can edit $form_state value before final submit

}