// тема письма
$subject = $_POST['theme'];
// текст сообщения
$message = $_POST['message'];
// Адресат
$to = 'komy@mail.ru';
// название файла
$filepath = "./attachment/Текстовый документ.txt";
// месторасположение файла
// письмо с вложением состоит из нескольких частей, которые разделяются разделителем
$boundary = "--".md5(uniqid(time()));
// генерируем разделитель
$mailheaders = "MIME-Version: 1.0\n";
$mailheaders .="Content-Type: multipart/mixed; boundary=".$boundary."\n";
// разделитель указывается в заголовке в параметре boundary
$mailheaders .= "From: Иванов Иван Иванович \r\n";
$mailheaders .= "Reply-To: ivanov@mail.ru\r\n";
$multipart = "--$boundary\n";
$multipart .= "Content-Type: text/plain; charset=windows-1251\n\n";
$multipart .= "$message\n\n";
// первая часть само сообщение
$fp = fopen($filepath,"r");
if (!$fp)
{
print "Файл не может быть прочитан";
exit();
}
$file = fread($fp, filesize($filepath));
fclose($fp);
// чтение файла
$message_part = "--$boundary\n";
$message_part .= "Content-Type: application/octet-stream; name = " .$filename."\n";
$message_part .= "Content-Transfer-Encoding: base64\n";
$message_part .= "Content-Disposition: attachment; filename = ".$filename."\n\n";
$message_part .= chunk_split(base64_encode($file))."\n";
// второй частью прикрепляем файл, можно прикрепить два и более файла
$multipart .= $message_part;
mail($to,$subject,$multipart,$mailheaders);