2017-04-07 3 views
0

저는 드루팔 (Drupal)이라는 새로운 형식이지만 제출시 $subject 메시지와 $from 이메일 주소로 원하는 위치로 이메일을 전송하는 drupal_mail 기능을 설정했습니다. 그러나 메시지 본문을 보내는 것은 아닙니다. 내가 봤 거든/많은 것들을 시도했지만 아무것도 올바른 가치를 잡는 것 같습니다. 왜 아무도 볼 수 있습니까? 귀하의 도움에 미리 감사드립니다.내 메시지 본문이 drupal_mail()에서 전송되지 않는 이유는 무엇입니까?

function drupalform_menu() { 
$items['drupalform/form1'] = array(
    'type' => MENU_CALLBACK, 
    'access arguments' => array('access content'), 
    'page callback' => 'drupal_get_form', 
    'page arguments'=>array('drupalform_form1')); 

    return $items; 
} ?> 


<?php function drupalform_form1() { 
$form = array(
    '#prefix' => '<div id="contact-form" class="row section"><div 
class="container">', 
    '#suffix' => '</div></div>', 
); ?> 


    <?php $form['name']=array(
    '#prefix' => '<div class="col l5 s12">', 
    '#type'=>'textfield', 
    '#title'=>t('FIRST & LAST NAME'), 
); ?> 

<?php $form['email']=array(
    '#suffix' => '</div>', 
    '#type'=>'textfield', 
    '#title'=>t('EMAIL'), 
); ?> 

<?php $form['message']=array(
    '#prefix' => '<div id="form-message" class="col l5 push-l1 s12 ">', 
    '#type'=>'textarea', 
    '#title'=>t('MESSAGE'), 
); ?> 

<?php $form['submit']=array(
    '#suffix' => '</div>', 
    '#type'=>'submit', 
    '#value'=>t('SEND MESSAGE') 
); 

    return $form; ?> 


<?php } ?> 


<?php 

function drupalform_form1_submit($form, $form_state) { 
$to = "[email protected]"; 
$from = "[email protected]"; 
$subject = "New message from the Louisville Digital Inclusion Site"; 
$body = $form_state['values']['message']; 


$params = array(
    'subject' => $subject, 
    'body' => $body, 
    ); 

drupal_mail('test', 'information', $to, language_default(), $params, $from); 

drupal_set_message("Form has been submitted"); 
} 


function test_mail($key, &$message, $params) { 
switch ($key) { 
case 'information': 
    $message['subject'] = $params['subject']; 
    $message['body'] = $params['body']; 
break; 
} 
} 

?> 

답변

0

알아 냈습니다! 나는 다음과 같이 내 test_mail 기능을 변경했다 :

function test_mail($key, &$message, $params) { 
switch ($key) { 
case 'information': 
$message['subject'] = $params['subject']; 
$message['body'][] = $params['body']; 
break; 
} 
} 

내가 $message['body'][] = $params['body'] 후 빈 괄호를 추가 할 필요가 있었다.

관련 문제