Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Перекодировка письма
 
 автор: Санька   (02.10.2007 в 18:23)   письмо автору
 
 

Имеется скрипт "отправка письма на мыло администратора" Скрипт написан в кодировке utf-8. После отправки письма на мыло письмо приходит так же в кодировке utf-8. Как мне сделать чтобы письмо приходило в кодировке windows-1251 что прописать?

   
 
 автор: Loneliness   (02.10.2007 в 18:33)   письмо автору
 
   для: Санька   (02.10.2007 в 18:23)
 

В заголовках передаваемого письма укажи кодировку.

'Content-type: text/plain; charset=windows-1251' . "\r\n" .

Вот пример заголовков:

$headers = 'From: moyemail@mail.ru' . "\r\n" .                    
    'Reply-To: moyemail@mail.ru' . "\r\n" .                        
    'Content-type: text/plain; charset=windows-1251' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

   
 
 автор: Санька   (02.10.2007 в 19:10)   письмо автору
 
   для: Loneliness   (02.10.2007 в 18:33)
 

Куда мне это вставить и как правильно, напишите.$from=$_POST['mail'];

$komu="Comersant85@mail.ru";

$tema=$_POST['name'];

$text_pisma=$_POST['text'];


mail($komu, $tema, $text_pisma, "From:$from");

   
 
 автор: mehelson   (02.10.2007 в 20:13)   письмо автору
 
   для: Санька   (02.10.2007 в 19:10)
 

mail($komu, $tema, $text_pisma, $hеаdеrs);

   
 
 автор: Санька   (02.10.2007 в 20:43)   письмо автору
 
   для: mehelson   (02.10.2007 в 20:13)
 

Писал разными способами выпадает ошибка или все тоже самое и остается.
И переменную создавал с этим кодом и вставлял переменную в mail(); результата нет.

   
 
 автор: Санька   (02.10.2007 в 23:43)   письмо автору
 
   для: Санька   (02.10.2007 в 20:43)
 

В конце концов поможет мне кто нибудь или нет!!!
Вот написал:

//Куда будем отправлять письмо
$komu="Comersant85@mail.ru";
//Тема письма
$tema=$_POST['name'];
//Само письмо
$text_pisma=$_POST['text'];
//От кого письмо и в какой кодировке
$adds="From: $mail\n";
$adds.="X-Sender: <$mail>\n";
$adds.="Content-type: text/plain;charset=utf-8\n";

//Отправляем письмо
mail($komu, $tema, $text_pisma, $adds);

Система такова при открытие письмо браузер перекодируется автоматом в utf-8 и текст видно по русски, если прописываю windows-1251 то браузер почты перекодируется автоматом в windows-1251 а текст не перекодируется и на экране одни зигзаги. Тобиш просто меняется кодировка браузера. КАК СДЕЛАТЬ ПЕРЕКОДИРОВКУ ТЕКСТА????

   
 
 автор: Ziq   (02.10.2007 в 23:59)   письмо автору
 
   для: Санька   (02.10.2007 в 23:43)
 

Перекодировку текста можно осуществить с помощью библиотеки iconv примерно так

$text_pisma = iconv("UTF-8", "windows-1251", $text_pisma);

   
 
 автор: Санька   (03.10.2007 в 00:11)   письмо автору
 
   для: Ziq   (02.10.2007 в 23:59)
 

Спасибо работает.

   
 
 автор: Санька   (03.10.2007 в 01:01)   письмо автору
 
   для: Санька   (03.10.2007 в 00:11)
 

Все отлично перекодирует тему, текск и т.д, но когда читаю письмо первая строчка пустая, а дальше уже идет текст. Как можно устранить такой недочет?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования