Drupal 6中webform的附加提交事件处理程序

时间:2010-09-08 13:06:04

标签: php drupal-6

我在我的网站上使用Drupal 6.19和webform模块。在一个特定的表单上,我想用输入的值做一些额外的处理,所以我创建了一个模块并实现了hook_form_alter,并添加了我自己的函数mymodule_webform_submit到提交事件处理程序列表。

假设我有两个字段,分别具有字段键值名称和地址。如何在mymodule_webform_submit函数中打印这些字段的值?一些例子将非常感激。以下是我目前的代码。

<?php
    function mymodule_form_alter(&$form, &$form_state, $form_id) {
      if($form_id == 'webform_client_form_8') {

         $form['#submit'][] = 'mymodule_webform_submit';

      }

    }

    function mymodule_webform_submit(&$form,&$form_state) {
      drupal_set_message($form_state['values']['name']);

    }


?>

请帮忙 谢谢

1 个答案:

答案 0 :(得分:0)

您缺少提交功能的参数。添加完成后,您的值应为$ form_state ['values']。它应该是这样的:

function mymodule_webform_submit($form, &$form_state) {
  print $form_state['values']['name'];
  print $form_state['values']['address'];
}

但是你可以随心所欲地做任何你想要的事情。只需确保您有正确的元素键。您可以通过输入var_export($ form_state ['values'])来查看可用的内容;出口();在函数内部并提交表单。