Вложения PHPMailer отображаются в виде текста в кодировке base64 - PullRequest
0 голосов
/ 03 сентября 2018

Вот мой PHP-код:

$mail = new PHPMailer();
$mail->AddAddress('neubert@neubert.com');
$mail->SetFrom('neubert@neubert.com');
$mail->Subject = 'Attachment Test ' . mt_rand(1, 10000000);
$mail->Body = 'See attached!';

$mail->AddStringAttachment('hello, world!', 'test.txt', 'base64', 'application/csv');
$mail->Send();

Вот как это выглядит в моем почтовом ящике Gmail:

enter image description here

Вот как я хочу, чтобы это выглядело:

enter image description here

Вот что я вижу, когда нажимаю «Показать оригинал» в Gmail:

Content-Type: multipart/alternative; boundary="_av-HS21mQOZlMv59VDZAuEczg"

--_av-HS21mQOZlMv59VDZAuEczg
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit

This is a multi-part message in MIME format.
--b1_sXvhvmroccaUM1u8XDL1OMveVh8ZiFheK8opqb2i3o8 Content-Type: text/plain;
charset=us-ascii See attached!
--b1_sXvhvmroccaUM1u8XDL1OMveVh8ZiFheK8opqb2i3o8 Content-Type:
application/csv; name="test.txt" Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=test.txt aGVsbG8sIHdvcmxkIQ==
--b1_sXvhvmroccaUM1u8XDL1OMveVh8ZiFheK8opqb2i3o8--
--_av-HS21mQOZlMv59VDZAuEczg
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

This is a multi-part message in MIME format.
--b1_sXvhvmroccaUM1u8XDL1OMveVh8ZiFheK8opqb2i3o8
Content-Type: text/plain; charset=us-ascii

See attached!

--b1_sXvhvmroccaUM1u8XDL1OMveVh8ZiFheK8opqb2i3o8
Content-Type: application/csv; name="test.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=test.txt

aGVsbG8sIHdvcmxkIQ==

--b1_sXvhvmroccaUM1u8XDL1OMveVh8ZiFheK8opqb2i3o8--<img src="https://mandrillapp.com/track/open.php?u=30776766&id=8ee95f6ae4b345d2a87af6f4ea043ca2" height="1" width="1">
--_av-HS21mQOZlMv59VDZAuEczg--

Согласно composer.lock я использую v6.0.5.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 03 сентября 2018

У меня есть идея, что может быть причиной этого - границы MIME PHPMailer всегда начинаются с b1, b2, b3 - но ваша начинается с _av, поэтому я подозреваю, что вы иметь антивирусное программное обеспечение, мешающее вашему трафику.

0 голосов
/ 03 сентября 2018

Создайте mime-тип (последний параметр) text / csv и измените имя файла на test.csv. Также укажите строку с разделителями-запятыми в качестве первого параметра, чтобы сделать все входные параметры действительными.

...