4
Drupal 7로 이메일을 보내려고합니다. 이메일은 내 이메일 계정으로 보내지 만, 본문과 제목은 비어 있습니다. 이유를 설명해주세요. 고맙습니다. drupal 7 : 메일이 전송되었지만 본문과 제목이 비어 있습니다.
function get_friendform($form,&$form_submit){
$form['fullname'] = array(
'#title' => t('Your Full Name: '),
'#type' => 'textfield',
'#required' => TRUE,
'#size' => 30,
);
$form['email'] = array(
'#title' => t('Your Full Email: '),
'#type' => 'textfield',
'#required' => TRUE,
'#size' => 30,
);
$form['friend_email'] = array(
'#title' => t('Your Friend Email: '),
'#type' => 'textfield',
'#required' => TRUE,
'#size' => 30,
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'submit',
'#submit' => array('sendform_form_submit')
);
return $form;
}
function sendform_form_submit($form,&$form_submit){
$fullname = $form_submit['values']['fullname'];
$email = $form_submit['values']['email'];
$friend_email = $form_submit['values']['friend_email'];
$current_page = $GLOBALS['base_url'] .'/'.current_path();
$mailto = '[email protected]';
$mailfrom = '[email protected]';
$subject = "Links to event";
$body = $current_page;
$params = array(
'body' => $body,
'subject' => $subject,
);
if (drupal_mail('get_friendform', 'send_link', $mailto, language_default(),$params,$mailfrom,TRUE)) {
drupal_set_message(t('Your message was sent successfully!!!'));
}
}
function sendform_mail($key,&$message,$params) {
$language = $message['language'];
switch ($key) {
case 'send_link':
$message['subject']=t($params['subject'], $var, $language->language);
$message['body'][]=$params['body'];
$message['headers']['Content-Type'] = 'text/html; charset=UTF-8; format=flowed';
break;
}
}
이
새로운 코드
function sendform_form_submit($form,&$form_submit){
$fullname = $form_submit['values']['fullname'];
$email = $form_submit['values']['email'];
$friend_email = $form_submit['values']['friend_email'];
$current_page = $GLOBALS['base_url'] .'/'.current_path();
$mailto = '[email protected]';
$mailfrom = '[email protected]';
$subject = "Links to event";
$params ='';
$body[] = $current_page;
$mail_message = drupal_mail('send_form', 'some_key', $mailto, language_default(), $params, $mailfrom, TRUE);
$mail_message['subject'] = $subject;
$mail_message['body'] = $body;
$mail_system = drupal_mail_system($module, $key);
$mail_message = $mail_system->format($mail_message);
$mail_message['result'] = $mail_system->mail($mail_message);
}
안녕하세요, 대단히 감사합니다. 하지만 어떤 함수와 함께 코드를 사용해야합니까? 감사합니다 –
답변이 업데이트되었습니다. 친절하게 다시 확인하십시오. –
안녕하세요, 구현했습니다. 그것은 작동하지만, 그것은 하나의 올바른 이메일과 하나의 여분의 빈 이메일을 제공합니다. 위의 코드를 send_form_form_submit()에 포함시키고 send_form_mail()을 삭제했습니다. –