Непорядок.
Сейчас исправим.
Отправка почты из скриптов на PHP - вещь, которая очень часто встречается в веб-приложениях. К сожалению, как показывает практика, большинство разработчиков используют эту функцию неправильно, допуская в своих скриптах одни и те же ошибки. В результате оказывается, что письмо получателю пришло в неверной кодировке, просто не дошло, или вообще неумело написанная форма отправки сообщения была использована для рассылки спама.
А по сему, прежде чем писать почтовую форму, не плохо бы хотя бы немного представлять себе, как это устроено.
Прочитать об этом можно тут.
Сам класс в аттаче.
Вызывается так:
/**
* Сообщения об ошибках на русском языке
*/
$language = array(
'no_text' => 'Нет текста письма',
'no_file' => 'Не указан путь до файла',
'no_path' => 'Нет файла по указанному пути',
'no_addresse' => 'Нет адреса получателя',
'not_correct' => 'E-mail указан некорректно',
'no_sender' => 'Нет отправителя',
'no_theme' => 'Нет темы письма',
'no_send' => 'По техническим причинам отправка письма
в данный момент невозможна',
);
/**
* Адрес получателя
*/
$to = 'my-email@mail.ru';
/**
* Адрес отправителя
*/
$from = 'email@yandex.ru';
/**
* Тема письма
*/
$subject = 'Табе пакет';
/**
* Текст сообщения. Можно в формате HTML
*/
$message = '<h1 style="color:blue">Вот такое вот письмо</h1>';
/**
* Путь до прикрепляемого файла
*/
$file = 'pic.gif';
/* *
* Подключаем класс
*/
// include 'IRB_Mailer.php';
/**
* Создаем новый объект. Сообщение - обязательный параметр
* Язык по дефолту - английский. Можно не указывать.
*/
$mail = new IRB_Mailer($message, $language);
/**
* Если нужно - прикрепляем файл. Если нет - не пишем этот вызов
* Второй параметр указывать не обязательно. Тогда сохранится родное имя файла.
*/
$mail -> attacheFile($file, 'kartinko');
/**
* Выставляем тип HTML. Если простой текст - не пишем этот вызов
*/
$mail -> setHtml();
/**
* Кому, от кого, тема.
*/
$mail -> createTo($to);
$mail -> createFrom($from);
$mail -> createSubject($subject);
/**
* Отправка. При удачной вернет NULL, при фиаско - текст ошибки
*/
$error = $mail -> sendMail();
/**
* Ну а так можно этот текст вывести и посмотреть.
*/
echo nl2br($error);
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.
Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.
Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.