Добрый день Господа, пишу, потому что уже 3-и сутки проковырял весь интернет, не могу найти причину своих страданий... Меньше лирики, ближе к сабжу. Есть функция отправки мыла с аттачем (рассылка прайсов). Все работает отлично, кроме одного. Если во вложении появляется кирилица, весь последующий текст письма превращается в фарш... Код (Text): function send_mime_mail_with_attachment($name_from, // имя отправителя $email_from, // email отправителя $name_to, // имя получателя $email_to, // email получателя $data_charset, // кодировка переданных данных $send_charset, // кодировка письма $subject, // тема письма $body, // текст письма $link_hash, // линк на хэш получателя для отписки. $attachment // имя отправляемого файл ) { $f = fopen($attachment,"rb"); $to = mime_header_encode($name_to, $data_charset, $send_charset) . ' <' . $email_to . '>'; $subject = mime_header_encode($subject, $data_charset, $send_charset); //$body = mime_header_encode($body, $data_charset, $send_charset); $from = mime_header_encode($name_from, $data_charset, $send_charset) .' <' . $email_from . '>'; $un = strtoupper(uniqid(time())); if($data_charset != $send_charset) { $body = iconv($data_charset, $send_charset, $body); } $headers = "From: $from\n"; //$headers .= "To: $to\n"; // $headers .= "Subject: $subject\n"; $headers .= "X-Mailer: PHPMail Tool\n"; $headers .= "Reply-To: $from\n"; $headers .= "Mime-Version: 1.0\n"; $headers .= "Content-type: multipart/mixed; charset=$send_charset"; $headers .= "boundary=\"----------".$un."\"\n\n"; //адские муки $zag = "------------".$un; $zag .= "\nContent-Type:text/html; charset=$send_charset;\r\n"; $zag .= "Content-Transfer-Encoding:8bit; \n\n"; $zag .= "<strong>$body </strong>\n <br> - otkazatsa ot rassylky - <a href='$link_hash'> $link_hash </a>\n\n"; //адские муки $zag .= "------------".$un."\n"; $zag .= "Content-Type: application/octet-stream;"; $zag .= "name=\"".basename($attachment)."\"\n"; $zag .= "Content-Transfer-Encoding:base64;\n"; $zag .= "Content-Disposition:attachment;"; $zag .= "filename=\"".basename($attachment)."\"\n\n"; echo $zag; $zag .= chunk_split(base64_encode(fread($f,filesize($attachment))))."\n"; //$body .= $zag; return mail($to, $subject, $zag, $headers); } место мучений выделил "адскими муками". Временно текст заменил транслитом.
а ну вообщем пошло оно все в глубины фрактального ануса. PHPMailer спас положение, чего и Вам желаю ))