Кемеровские программисты php общаются здесь
Anonymous
Отправьте PDF-файл, созданный TCPDF, с функцией почты PHP.
Сообщение
Anonymous » 26 дек 2025, 10:09
Файл PDF создается библиотекой tcpdf, но я не могу прикрепить его к электронному письму. Он отправляет электронное письмо с пустым PDF-файлом размером 1 КБ.
Код: Выделить всё
$to = 'receiver@gmail.com';
$subject = 'Receipt';
$repEmail = 'info@gmail.com';
$fileName = 'receipt.pdf';
$fileatt = $pdf->Output($fileName, 'S');
$attachment = chunk_split($fileatt);
$eol = PHP_EOL;
$separator = md5(time());
$headers = 'From: Sender '.$eol;
$headers .= 'MIME-Version: 1.0' .$eol;
$headers .= "Content-Type: multipart/mixed; boundary=\"".$separator."\"";
$message = "--".$separator.$eol;
$message .= "Content-Transfer-Encoding: 7bit".$eol.$eol;
$message .= "This is a MIME encoded message.".$eol;
$message .= "--".$separator.$eol;
$message .= "Content-Type: text/html; charset=\"iso-8859-1\"".$eol;
$message .= "Content-Transfer-Encoding: 8bit".$eol.$eol;
$message .= "--".$separator.$eol;
$message .= "Content-Type: application/pdf; name=\"".$fileName."\"".$eol;
$message .= "Content-Transfer-Encoding: base64".$eol;
$message .= "Content-Disposition: attachment".$eol.$eol;
$message .= $attachment.$eol;
$message .= "--".$separator."--";
if (mail($to, $subject, $message, $headers)){
echo "Email sent";
}
else {
echo "Email failed";
}
Я знаю, что с phpmailer гораздо проще, но мне нужно делать это с помощью функции почты и не использовать никакие библиотеки.
Любая помощь приветствуется.
Подробнее здесь:
https://stackoverflow.com/questions/156 ... l-function
1766732955
Anonymous
Файл PDF создается библиотекой tcpdf, но я не могу прикрепить его к электронному письму. Он отправляет электронное письмо с пустым PDF-файлом размером 1 КБ. [code]$to = 'receiver@gmail.com'; $subject = 'Receipt'; $repEmail = 'info@gmail.com'; $fileName = 'receipt.pdf'; $fileatt = $pdf->Output($fileName, 'S'); $attachment = chunk_split($fileatt); $eol = PHP_EOL; $separator = md5(time()); $headers = 'From: Sender '.$eol; $headers .= 'MIME-Version: 1.0' .$eol; $headers .= "Content-Type: multipart/mixed; boundary=\"".$separator."\""; $message = "--".$separator.$eol; $message .= "Content-Transfer-Encoding: 7bit".$eol.$eol; $message .= "This is a MIME encoded message.".$eol; $message .= "--".$separator.$eol; $message .= "Content-Type: text/html; charset=\"iso-8859-1\"".$eol; $message .= "Content-Transfer-Encoding: 8bit".$eol.$eol; $message .= "--".$separator.$eol; $message .= "Content-Type: application/pdf; name=\"".$fileName."\"".$eol; $message .= "Content-Transfer-Encoding: base64".$eol; $message .= "Content-Disposition: attachment".$eol.$eol; $message .= $attachment.$eol; $message .= "--".$separator."--"; if (mail($to, $subject, $message, $headers)){ echo "Email sent"; } else { echo "Email failed"; } [/code] Я знаю, что с phpmailer гораздо проще, но мне нужно делать это с помощью функции почты и не использовать никакие библиотеки. Любая помощь приветствуется. Подробнее здесь: [url]https://stackoverflow.com/questions/15662858/email-tcpdf-generated-pdf-file-with-php-mail-function[/url]