ptiZa
Новичок
Есть функция отправления писем с вложениями:
Письма приходят в корректной кодировке, но вместо названий прикрепленных файлов отображается абракадабра. Такая проблема наблюдается при отправке писем на mail.ru и ngs.ru
Подскажите, в чем может быть загвоздка?
PHP:
$subject = "=?UTF-8?B?".base64_encode($subject)."?=";
$bound = md5(uniqid(time()));
$header = "Mime-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"{$bound}\"\r\n";
$header .= "From: {$from}";
$body = "--{$bound}\r\n";
$body .= "Content-Type: text/html; charset=utf-8\r\n";
$body .= "Content-Transfer-Encoding: quoted-printable\r\n\r\n";
$body .= $message;
foreach($files as $key=>$file) {
if ($file['src']) {
$name = $file['name'];
$fp = fopen($file['src'], "rb");
$attachment = fread($fp, filesize($file['src']));
fclose($fp);
$body .= "\r\n--{$bound}\r\n";
$body .= "Content-Type: application/octet-stream; name=\"{$name}; charset=utf-8\"\r\n";
$body .= "Content-Transfer-Encoding: base64\r\n";
$body .= "Content-Disposition: attachment; filename=\"{$name}\"\r\n\r\n";
$body .= chunk_split(base64_encode($attachment));
}
}
$body .= "\r\n--{$bound}--\r\n";
return mail($to, $subject, $body, $header);
Письма приходят в корректной кодировке, но вместо названий прикрепленных файлов отображается абракадабра. Такая проблема наблюдается при отправке писем на mail.ru и ngs.ru
Подскажите, в чем может быть загвоздка?