Посылка в указанной кодировке
Сначала давайте договоримся об одном соглашении: функции mail() передавать только адрес получателя и текст письма. Ни заголовков, ни темы— и то и другое должно присутствовать в самом письме. Например:
$message=
"From: Лист рассылки
To: Иванов Иван Иванович
Subject: Пробная рассылка
Content-type: text/plain; charset=windows-1825
Уважаемый товарищ! Это письмо послано почтовым роботом.
Всего хорошего!";
Mail("ivanov@ivan.ivanovich.ru","",$message);
Обратите внимание на заголовок Content-type (в некоторых системах он обязательно должен стоять последним — проверьте это экспериментально). Он задает, что, во-первых, письмо доставляется как простой текст (text/plain), а во-вторых, что его кодировка — Windows. Теперь письмо всегда можно будет прочитать, даже если почтовая программа клиента по умолчанию настроена на китайскую кодировку.
И почему некоторые программы так не делают, а посылают письма без указания их кодировки? Неужели им жалко лишнего десятка байтов для названия кодировки?
Обратите внимание на то, что тело письма отделяется от заголовков пустой строкой, с тем, чтобы почтовая программа могла понять, где кончаются заголовки и начинается тело.