функция mail - проблемы с кириллицей

  • Автор темы natascia7
  • Дата начала

natascia7

Guest
функция mail - проблемы с кириллицей

Привет всем!
Помогите, пожалуйста, решить проблему с кириллицей!
Используя функцию mail в php не могу добиться, чтобы приходили письма с "читабельной" кириллицей.
Я использую этот код:
PHP:
$message = $_POST['message']; 
$toname = $_POST['name']; 
$toaddress = $_POST['email']; 
$subject = $_POST['subject']; 
$fromname = "myname"; 
$fromaddress = "[email protected]"; 

function MAIL_NVLP($fromname, $fromaddress, $toname, $toaddress, $subject, $message) 
{ 
$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/plain; charset=windows-1251\r\n"; 
$headers .= "X-Priority: 3\r\n"; 
$headers .= "X-MSMail-Priority: Normal\r\n"; 
$headers .= "From: \"".$fromname."\" <".$fromaddress.">\r\n"; 
$headers .= "Reply-To: <".$fromaddress.">\r\n"; 
return mail($toaddress, $subject, $message, $headers); 
} 

MAIL_NVLP($fromname, $fromaddress, $toname, $toaddress, $subject, $message);
Заранее спасибо!
 

Фанат

oncle terrible
Команда форума
письма ениходят в нечитабельной кириллице, или почтовая программа неправильно её отображает?
что видно в исходнике письма?
 

natascia7

Guest
Если я поняла правильно, что такое исходник письма :) , то вот оно

Return-Path: <[email protected]>
Received: from [81.19.66.156] (HELO mxe.rambler.ru)
by mail6.rambler.ru (CommuniGate Pro SMTP 4.2.10)
with ESMTP id 111598812 for [email protected]; Sun, 06 Nov 2005 15:39:15 +0300
Received-SPF: pass (mxe.rambler.ru: domain of niobe.sweb.ru designates 81.222.134.86 as permitted sender) client-ip=81.222.134.86; [email protected]; helo=niobe.sweb.ru;
Received: from niobe.sweb.ru (unknown [81.222.134.86])
by mxe.rambler.ru (Postfix) with SMTP id 85C4426A0EF
for <[email protected]>; Sun, 6 Nov 2005 19:39:15 +0300 (MSK)
(envelope-from [email protected])
Received: (qmail 6933 invoked by uid 602); 6 Nov 2005 16:39:12 -0000
Date: 6 Nov 2005 16:39:12 -0000
Message-ID: <[email protected]>
To: [email protected]
Subject: Confirm
MIME-Version: 1.0
Content-type: text/plain; charset=windows-1251
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1081
From: [email protected]
Reply-To: [email protected]


&#208;&#191;&#209;?&#208;&#184;&#208;&#178;&#208;µ&#209;‚&#208;&#184;&#208;&#186;


пробовала открывать письмо на рамблере без скачивания его на Outlook , результат тот же .
 

SiMM

Новичок
natascia7, а откуда у вас данные, которые вы отправляете письмом, и почему вы решили, что они в кодировке Windows-1251?
 

natascia7

Guest
текст письма приходит из form, то есть если один посетитель моего сайта пишет другому, то письмо пишет в form, которое передается на скрипт
$message = $_POST['message'];
$subject = $_POST['subject'];

а эти данные
$toname = $_POST['name'];
$toaddress = $_POST['email'];
берутся из базы данных (я использую MySQL)

А как мне узнать в какой они кодировке? :rolleyes:
 

SiMM

Новичок
> текст письма приходит из form,
Ну а сайт в какой кодировке?
 

natascia7

Guest
ну, конечно! Какая же я глупая :)
Проблема была в кодировке страниц сайта!
дело было в html-редакторе. У того, которым я пользовалась не было кодировки windows-1251, а UTF-8, и код я писала в UTF-8. Попробовала переписать страницы в другом редакторе и проблема решилась!
Большое спасибо за помощь!
 

SiMM

Новичок
Ну вообще-то можно было просто в заголовке письма правильную кодировку указать - ну да ладно ;)
 
Сверху