MimeMail: проблема с вложениями - PullRequest
1 голос
/ 18 июля 2010

Я использую модуль mimemail в Drupal для отправки писем с вложениями.Письма отправлены правильно, а вложения - нет.Вот код, который я использую (я только что включил модуль):

$sender = 'mycompany@company.com';
$recipient = 'myemail@mail.com';
$subject = 'New order';
$body = 'Please, see the attachment.';
$plaintext = TRUE;
$headers = array();
$attachments[]=array(         
  'filepath' => 'invoices/sample.pdf',
  'filemime' => 'application/pdf',
);

mimemail($sender, $recipient, $subject, $body, $plaintext, $headers, $text = NULL, $attachments, $mailkey);

Чтобы убедиться, что путь к вложению в формате PDF указан правильно, я написал эту строку для загрузки вложения из браузера.и это работает.

header('Location: invoices/sample.pdf');

Кроме того, я пробовал этот альтернативный код.Но все равно ничего ...

$file = new stdClass();
$file->filename = 'sample.pdf';
$file->filepath = 'invoices/sample.pdf';
$file->filemime = 'application/pdf';
mimemail($sender, $recipient, $subject, $body, $plaintext, $headers, $text = NULL, array($file), $mailkey);

пс.Я так не думаю, но может быть потому, что мой хостинг не позволяет отправлять вложения?спасибо

1 Ответ

0 голосов
/ 20 июля 2010

Для модуля Mime Mail открыты два отчета о проблемах.

В Вложения, указанные с абсолютными локальными путями, не добавляются , OP сообщает, что вложения, указанные с использованием абсолютных путей, не добавляютсяРабота;есть предложенный патч для решения проблемы.В этом выпуске предлагается изменить код для отправки электронного письма с вложениями с

header('Location: invoices/sample.pdf');

$sender = 'mycompany@company.com';
$recipient = 'myemail@email.com';
$subject = 'New order';
$body = 'Please, see the attachment.';
$plaintext = TRUE;
$headers = array();
$attachments[] = array(
  'filepath' => 'invoices/sample.pdf',
  'filemime' => 'mime/type',
);

mimemail($sender, $recipient, $subject, $body, $plaintext, $headers, $text = NULL, $attachments, $mailkey);

на

header('Location: invoices/sample.pdf');

$sender = 'mycompany@company.com';
$recipient = 'myemail@email.com';
$subject = 'New order';
$body = 'Please, see the attachment.';
$plaintext = TRUE;
$headers = array();
$attachments[] = array(
  'filepath' => 'invoices/sample.pdf',
  'filemime' => 'mime/type',
  'filename' => 'sample.pdf',
  'list' => TRUE,
);

mimemail($sender, $recipient, $subject, $body, $plaintext, $headers, $text = NULL, $attachments, $mailkey);

В mimemail + smtp + вложения, не работающие с вложениями , OP сообщает, что вложения не отображаются при использовании SMTP;в том же отчете другой пользователь сообщает, что он не использует SMTP, но вложения не отображаются, когда электронное письмо отправляется с помощью правил.

...