Form -> PHP -> Mail client - UTF-8 @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 6 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
goa
постоянный участник
41
Сообщения: 2892
Зарегистрирован: 12.03.03
Откуда: Tallinn, Estonia
Заголовок сообщения: Form -> PHP -> Mail client - UTF-8
Сообщение Добавлено: 10 Июль 2007, 16:44:39 
Есть форма в ХТМЛ файле с УТФ-8 - <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

срипт пересылает содержимое формы в ПХП файлик, который уже отсылает мейл.
Проблема: мейл клиент не видет что это УТФ-8 письмо, Аутлуук 2003 вобще не понимает символы

что делать?

пробывал в ПХП прописать header('Content-type: text/html; charset=utf-8'); mb_internal_encoding("UTF-8"); mb_http_output( "UTF-8" ); - не помогает

скрипт в ХТМЛ:

<!--

function onButtonClick() {
var message = "";


if (document.form1.name.value == "") {
message = message + "Your name is required.\n";
}
if (document.form1.email.value.indexOf("@")<3){
message = message + "Incorrect e-mail. Please try again.\n";
}
if (document.form1.email.value == "") {
message = message + "Your e-mail is required.\n";
}
if (document.form1.text.value == "") {
message = message + "Text of mail is required.\n";
}
if(message!=""){
alert("Fields of form is not filled or filled incorrect:\n\n" + message + "\n\n Please fill or correct fields and try send again.");
}

else {
document.form1.action = "mailform_rus.php";
document.form1.method = "post";
document.form1.submit();
}
}

//-->


Код в ПХП файле mailform_rus:

<?php

$email = 'info@goa.ee';
$subject = 'Message - russian';

//foreach ($HTTP_POST_VARS as $var) {
foreach ($HTTP_POST_VARS as $key => $value) {
$text .= "$key = $value \n";
}

$from = $HTTP_POST_VARS['email'];
mail($email,$subject,$text,"From: $from\nReply-To: $from\n");

?>

_________________
Мой журнал LJ - Мой Flickr - Мои сайт
Webmoney => PayPal
gro
новый человек
17
Сообщения: 43
Зарегистрирован: 09.09.06
Сообщение Добавлено: 10 Июль 2007, 20:01:39 

Цитата:
пробывал в ПХП прописать header('Content-type: text/html; charset=utf-8');


Это не в PHP надо прописывать, а в заголовках письма:
mail($email,$subject,$text,"From: $from\nReply-To: $from\nContent-type: text/plain; charset=utf-8");
Другое дело, что очень многие почтовые клиенты не понимают UTF. Лучше перекодировать данные в win-1251. хотя бы тем же mbstring.

Еще подумайте над тем, что будет, если кто-нибудь введет в поле email:
Код:
email@mail.ru<перенос строки>cc: очень много адресов через запятую.

Подсказка: ничего хорошего, лучше уберите.

Кстати, HTTP_POST_VARS устарел чуть ли не в прошлом тысячелетии, сейчас рулит $_POST.
goa
постоянный участник
41
Сообщения: 2892
Зарегистрирован: 12.03.03
Откуда: Tallinn, Estonia
Сообщение Добавлено: 11 Июль 2007, 10:22:37 
gro,
спасибо! заработало!
но много адресов в строке и ПОСТ трогать не буду. :)

_________________
Мой журнал LJ - Мой Flickr - Мои сайт
Webmoney => PayPal
Лампочка Жен.
Модератор
135
Сообщения: 4165
Зарегистрирован: 17.05.06
Откуда: трехкомнатная страна
Сообщение Добавлено: 11 Июль 2007, 10:29:29 
ммм, я не знала про такое, надо себе на сайт добавить
XakeR
новый человек
0
Сообщения: 1
Зарегистрирован: 04.08.07
Сообщение Добавлено: 4 Август 2007, 21:42:23 
прописывая в хедере кодировку win-1251, тело писма отображается нормально, но почтовые клиэнты всё ещё не понимают $subject, если его писать на кирлице. Как поменять кодировку для темы письма???
gro
новый человек
17
Сообщения: 43
Зарегистрирован: 09.09.06
Сообщение Добавлено: 4 Август 2007, 21:45:18 
http://forum.pyha.ru/topic/50.0
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 6 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100