Помощник
|
Помогите с кодировкой письма, php mail |
pulsar21
|
Сообщение
#1
|
||
|
|
||
|
|||
makedonskiy |
26.8.2014, 14:20;
Ответить: makedonskiy
Сообщение
#2
|
|
Используйте функцию wpmail http://codex.wordpress.org/Function_Reference/wp_mail.
Либо почитайте в гугле про кодировку функции `mail()`. А конкретно надо отсылать кодировку `Content-type` В SITE_CHARSET напишите кодировку вашего сайта. CODE <?php define('SITE_CHARSET', 'utf-8'); if(isset($_POST['submitted'])) { if(trim($_POST['contactName']) === '') { $nameError = 'Please enter your name.'; $hasError = true; } else { $name = trim($_POST['contactName']); } if(trim($_POST['email']) === '') { $emailError = 'Please enter your email address.'; $hasError = true; } else if (!eregi("^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,4}$", trim($_POST['email']))) { $emailError = 'You entered an invalid email address.'; $hasError = true; } else { $email = trim($_POST['email']); } if(trim($_POST['comments']) === '') { $commentError = 'Please enter a message.'; $hasError = true; } else { if(function_exists('stripslashes')) { $comments = stripslashes(trim($_POST['comments'])); } else { $comments = trim($_POST['comments']); } } if(!isset($hasError)) { $emailTo = get_option('publisher_email'); if (!isset($emailTo) || ($emailTo == '') ){ $emailTo = get_option('admin_email'); } $subject = '[Contact Form] From '.$name; $body = "Name: $name \n\nEmail: $email \n\nComments: $comments"; $headers = 'Content-type: text/html; charset='. SITE_CHARSET . "\r\n"; $headers .= 'From: '.$name.' <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email; mail($emailTo, $subject, $body, $headers); $emailSent = true; } } ?> А вообще, можно было сделать вот так Код <?php
define('SITE_CHARSET', 'utf-8'); if(!isset($_POST['submitted'])) exit; $name = !empty($_POST['contactName']) ? trim($_POST['contactName']) : false; $email = (!empty($_POST['email']) && preg_match("^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,4}$", trim($_POST['email']))) ? trim($_POST['email']) : false; $comments = !empty($_POST['comments']) ? stripslashes(trim($_POST['comments'])) : false; if($name && $email && $comments) { $emailTo = get_option('publisher_email'); if(!isset($emailTo) || ($emailTo == '')) $emailTo = get_option('admin_email'); $subject = "[Contact Form] From {$name}"; $body = "Name: {$name}\n\nEmail: {$email}\n\nComments: {$comments}"; $headers = 'Content-type: text/html; charset='. SITE_CHARSET . "\r\n"; $headers .= "From: {$name} <{$emailTo}>\r\nReply-To: {$email}"; mail($emailTo, $subject, $body, $headers); } Сообщение отредактировал makedonskiy - 26.8.2014, 14:21 |
|
|
pulsar21
|
Сообщение
#3
|
|
makedonskiy, спасибо. Оказалось все банальней. У меня была настроена пересылка с почты на сервере (хостинге) на ящик на mail.ru. Нужно было просто выбрать нужную кодировку писем на сервере.
Но, все-равно, для меня информация была полезной. Может, еще кому понадобится... -------------------- |
|
|
Billing8 |
26.8.2014, 16:23;
Ответить: Billing8
Сообщение
#4
|
|
|
Можно также добавить в ваш скрипт $mail -> charSet = "UTF-8";
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Помогите вспомнить рекламного бота Телеграм для обмена рекламой | 0 | Mixatraider | 727 | 21.2.2024, 23:42 автор: Mixatraider |
|
Помогите рещить проблему с монитором. Почему низкое разрешение при подключении монитора через displayport? |
0 | Levels | 1702 | 11.12.2020, 0:48 автор: Levels |
|
Помогите кто нибудь получить партнерку Росбанк! | 7 | heisenberg_mw | 2341 | 7.8.2020, 9:28 автор: heisenberg_mw |
|
Помогите найти тему пожалуйста | 7 | virtas | 12506 | 24.7.2020, 17:02 автор: -JamesSmips- |
|
Помогите с поиском доноров | 3 | tehno_music | 3356 | 4.11.2019, 17:15 автор: goblin78 |
Текстовая версия | Сейчас: 23.4.2024, 10:09 |