Здравствуйте, помогите разобраться, отправляю скриптом сообщения с файлом, везде сообщения выглядит корректно кроме майл ру, там приходят крякозябры, но файл открывается нормально. Как избавится от крякозябров? вот код которым отсылаю сообщения. Также я прикрепил фото с майл ру Код (Text): $filename = $rezz98[1].'.txt'; //Имя файла для прикрепления $to = $_POST['email']; //Кому $from = $email; //От кого $subject = "тема"; //Тема $message = "сообщение"; //Текст письма $boundary = "---"; //Разделитель /* Заголовки */ $headers = "From: $from\nReply-To: $from\n"; $headers .= "Content-Type: multipart/mixed; boundary=\"$boundary\""; $body = "--$boundary\n"; /* Присоединяем текстовое сообщение */ $body .= "Content-type: text/html; charset='utf-8'\n"; $body .= "Content-Transfer-Encoding: quoted-printablenn"; $body .= "Content-Disposition: attachment; filename==?utf-8?B?".base64_encode($filename)."?=\n\n"; $body .= $message."\n"; $body .= "--$boundary\n"; $file = fopen($filename, "r"); //Открываем файл $text = fread($file, filesize($filename)); //Считываем весь файл fclose($file); //Закрываем файл /* Добавляем тип содержимого, кодируем текст файла и добавляем в тело письма */ $body .= "Content-Type: application/octet-stream; name==?utf-8?B?".base64_encode($filename)."?=\n"; $body .= "Content-Transfer-Encoding: base64\n"; $body .= "Content-Disposition: attachment; filename==?utf-8?B?".base64_encode($filename)."?=\n\n"; $body .= chunk_split(base64_encode($text))."\n"; $body .= "--".$boundary ."--\n"; mail($to, $subject, $body, $headers); //Отправляем письмо
может .. .но кому это нужно, когда есть готовые библиотеки? Может у вас сам php файл не в кодировке utf8, а может данные что приходят не в ней ... причин может быть много.... опять же где гарантии - а я даже что-то уверен вот на 99%, что таким макаром письма будут уходить не на все почтовые адреса, например на gmail скорее всего не будут даже доходить ))))
Как сделать отправку письма с вложением? --- Добавлено --- Первое, что бросилось в глаза, – нестандартный разделитель строк. Хотя в линухе иногда такое прокатывает, когда выполняется автозамена "\n"->"\r\n". --- Добавлено --- Код (Text): $body .= "Content-Transfer-Encoding: quoted-printablenn"; блин, обратитесь к специалисту, если совсем не сечете, что пишете. --- Добавлено --- P.S. "блин" – это от форума, у меня было резче.