Drupal 7. Webforms 3.x.
送信時にWebフォームコンポーネントの値を変更しようとしています。'mos'というカスタムモジュールを作成し、このコードを追加しました。
function mos_form_alter(&$form, $form_state, $form_id) {
if ($form_id == 'webform_client_form_43') {
dsm($form['#node']->{'webform'}['components']['1']);
$form['#submit'][] = 'mos_contact_us_submit';
}
}
function mos_contact_us_submit($form, &$form_state) {
$form['#node']->{'webform'}['components']['1'] = 'working@mos.com';
}
ただし、データベースの結果を見ると、オーバーライドされていない通常の値が保存されています。私が間違っていることを教えてくれませんか?
最終的には、入力値を取得して、提供された内容に基づいて電子メールアドレスを出力したいと思います(たとえば、24はbob@somewhere.comになります)が、この部分は自分で理解できると思います。