phpmailer: отправка электронной почты с вложением и установка имени файла

Я написал сценарий, который генерирует файл pdf и отправляет его по электронной почте с помощью phpmailer. В письме я меняю имя PDF-файла на более информативное.

$mail->addAttachment('assets/old_filename.pdf','new_name.pdf');

В некоторых почтовых клиентах, таких как Gmail, файл доступен для чтения, но когда вы его загружаете, он сохраняется без расширения. Если я не задаю имя вложения, оно сохраняется с расширением (pdf). Я попытался установить тип пантомимы, а также отправить его с помощью codeigniter. Это не помогает.


person user3553470    schedule 26.01.2017    source источник


Ответы (2)


Мне кажется, что вы используете phpmailer. Вы можете попробовать следовать этому примеру https://github.com/PHPMailer/PHPMailer/blob/master/examples/send_file_upload.phps

person aomanansala    schedule 26.01.2017
comment
извините, но ответ не имеет отношения к вопросу .... Проблема в том, что gmail понимает правильный тип mime после установки имени вложения - person user3553470; 26.01.2017

PHPMailer автоматически установит правильный тип MIME для .pdf вложений, так что это не так. Я предлагаю проверить источник полученного сообщения, и вы должны увидеть имя файла в заголовках вложенных частей. Если он там правильный, но удаляется при сохранении, это проблема Gmail, не имеющая отношения к вашему сообщению.

person Synchro    schedule 26.01.2017