Всем привет. возникло проблемка при создание веб-пользователя отмечаю Послать новый пароль по e-mail и веб-пользователю приходит письмо в ироглифах, как испрвать? кто нить сталкивался? modx 1.04 EVO
В 1.0.5 вроде бы исправлено.
Проверял В 1.0.5 не исправлено, также в ироглифах приходят(.
Лично я все вызовы mail в modx заменил на phpmailer, чтобы не возникало никаких проблем.
Конкретно для данного случая в save_web_user.processor.php надо в функции sendMailMessage добавить вначале
global $modx;
и заменить строки
if (ini_get('safe_mode') == FALSE) {
if (!mail($email, $emailsubject, $message, "From: " . $emailsender . "\r\n" . "X-Mailer: Content Manager - PHP/" . phpversion(), "-f $emailsender")) {
webAlert("Error while sending mail to $mailto");
exit;
}
} elseif (!mail($email, $emailsubject, $message, "From: " . $emailsender . "\r\n" . "X-Mailer: Content Manager - PHP/" . phpversion())) {
webAlert("Error while sending mail to $email");
exit;
}
на
include_once "includes/controls/class.phpmailer.php";
$mail = new PHPMailer();
$mail->IsMail();
$mail->CharSet = $modx->config['modx_charset'];
$mail->IsHTML(true);
$mail->From = $emailsender;
$mail->FromName = $site_name;
$mail->Subject = $emailsubject;
$mail->Body = $message;
$mail->AddAddress($email);
$mail->AddReplyTo("no-reply@{$_SERVER['HTTP_HOST']}");
if(!$mail->send()) {
webAlert("Error while sending mail to $email");
exit;
}
Хотя можно и более простой доработкой sendMailMessage обойтись
ок, спс помогло) , а какой более простой доработкой sendMailMessage можно обойтись?
Quote from: abc_kirov at Jul 17, 2011, 02:34 AM
а какой более простой доработкой sendMailMessage можно обойтись?
Добавить в заголовок письма (в вызове mail)
Content-type:text/html; charset = utf-8
Закодировать, если надо, тему и имена отправителей и получателей с помощью
mb_encode_mimeheader
Как-то так примерно…