2010-09-08 41 views
1

在我的網站上使用Drupal 6.19和webform模塊。在特定的表單中,我想對輸入的值做一些額外的處理,所以我創建了一個模塊並實現了hook_form_alter,並將我自己的名爲mymodule_webform_submit的函數添加到提交事件處理程序列表中。在Drupal 6中爲webform添加事件處理函數

假設我在窗體中有兩個字段分別具有字段鍵值名稱和地址。如何在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']); 

    } 


?> 

請幫助 謝謝

回答

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']);出口();在函數內部並提交表單。

+0

感謝您的回覆jon.I使用drupal_set_message打印了文本字段的值,但它不顯示任何內容。另外,嘗試按照您的建議進行打印,但在提交之前未打印用戶輸入的值form.I編輯了上面的代碼以反映所做的更改。請幫助。 – Joe 2010-09-09 07:37:32

+0

你可以嘗試使用「var_export($ form_state ['values']); exit;」在提交函數內部打印表單提交的所有內容。這應該告訴你結構和可用的東西。 – jonathanpglick 2010-09-21 17:04:55

相關問題