Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2013-05-21 20:44:45

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Заголовок письма на почтовом сервисе mail.ru

Доброго времени суток. Возникла вот такая проблема:
На почтовом сервисе mail.ru заголовок письма отображается некорректно, в виде ??????? ?? ???????????? вместо "Спасибо за регистрацию".

92287341.th.jpg

Сайт крутится на хостинге, но дело не в хостинге. На собственном сервере на других проектах та же проблема.
На других прочтовых сервисах всё без проблем.
Может быть кто-то уже сталкивался с этой проблемой. Что делать?
Используемая версия:     0.9.3 Release [SVN880+FIX01]

Изменено nimiko (2013-05-24 21:59:26)

Не в сети

#2 2013-05-21 21:26:23

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

Из какого файла берётся реплика "Спасибо за регистрацию!" И в каком файле\строке скрипта собирается письмо, и в частности ЭТОТ ЗАГОЛОВОК?

Не в сети

#3 2013-05-21 21:54:27

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Заголовок письма на почтовом сервисе mail.ru

а копирайт или ссылочку на NG?

Не в сети

#4 2013-05-22 02:43:38

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

А по теме ответить?:mad:

Не в сети

#5 2013-05-22 06:22:41

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

Проблема решена. Поскольку тема письма "уходит" в кириллице, нам нужно её закодировать. В functions.inc.php в функции sendEmailMessage добавить.

$subject = "=?utf8?b?". base64_encode($subject) ."?=";

Важно! Кодировка темы письма должна соответствовать кодировке файла, в котором указаны варианты заголовков для письма (registrations.ini) В данном случае это utf8.
Проверено на всех популярных почтовых сервисах.
Вся функция:

function sendEmailMessage($to, $subject, $message, $filename = false, $mail_from = false, $ctype = 'text/html') {
	global $lang, $config;

	$mail_from	=	(!$mail_from) ? "noreply@".str_replace("www.", "", $_SERVER['SERVER_NAME']) : $mail_from;
	$uniqid		=	md5(uniqid(time()));

	$subject = "=?utf8?b?". base64_encode($subject) ."?=";

	$headers	=	'From: '.$mail_from."\n";
	$headers	.=	'Reply-to: '.$mail_from."\n";
	$headers	.=	'Return-Path: '.$mail_from."\n";
	$headers	.=	'Message-ID: <'.$uniqid.'@'.$_SERVER['SERVER_NAME'].">\n";
	$headers	.=	'MIME-Version: 1.0'."\n";
	$headers	.=	'Date: '.gmdate('D, d M Y H:i:s', time())."\n";
	$headers	.=	'X-Priority: 3'."\n";
	$headers	.=	'X-MSMail-Priority: Normal'."\n";
	$headers	.=	'X-Mailer: '.engineName.' : '.engineVersion."\n";
	$headers	.=	'X-MimeOLE: '.engineName.' : '.engineVersion."\n";
	$headers	.=	'content-type: multipart/mixed;boundary="----------'.$uniqid.'"'."\n\n";
	$headers	.=	'------------'.$uniqid."\n";
	$headers	.=	'content-type: '.$ctype.';charset='.$lang['encoding'].''."\n";
	$headers	.=	'content-transfer-Encoding: 8bit';

	if (is_file($filename)){
		$file		=	fopen($filename, 'rb');
		$message	.=	"\n".'------------'.$uniqid."\n";
		$message	.=	'Content-Type: application/octet-stream;name="'.basename($filename).'"'."\n";
		$message	.=	'Content-Transfer-Encoding: base64'."\n";
		$message	.=	'Content-Disposition: attachment;';
		$message	.=	'filename="'.basename($filename).'"'."\n\n";
		$message	.=	chunk_split(base64_encode(fread($file, filesize($filename))))."\n";
	}

	@mail($to, $subject, $message, $headers);
}

Не в сети

#6 2013-05-22 09:09:35

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Заголовок письма на почтовом сервисе mail.ru

просишь помощи ,а ссылку на NGCMS для помощи проекту?

Не в сети

#7 2013-05-22 13:48:14

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Заголовок письма на почтовом сервисе mail.ru

nimiko, проблема с почтой давно решена в SVN версии.
Там для этого используется отдельный модуль отправки сообщений.

Не в сети

#8 2013-05-22 15:15:08

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

irbees2008: просишь ссылочку на проект, а ответить по теме для помощи нуждающемуся?

Не в сети

#9 2013-05-22 15:25:08

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

vitaly, Вы имеете ввиду 0.9.4 RC1? Если версия стабильная, следующий проект сделаю на нём, а этот закончу на старой версии. Уж не хочется обновляться, слишком много всего перерабатывать придётся. Меня 0.9.3 пока устраивает, я в ней уже много всего разобрал и понял. И, кстати, очень многому научился, за что спасибо Вам smile Движок вполне удобен, как для верстальщика и администратора. А что неудобно - можно подстроить под себя.

Не в сети

#10 2013-05-22 15:50:15

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Заголовок письма на почтовом сервисе mail.ru

Да, речь шла про RC1.

Вообще архитектура движка разрабатывалась из предположения, что пользователи будут обновляться по мере выхода новых версий ядра/плагинов.
А если требуется что-то доделать, то все доделки делаются в виде независимых плагинов, которые в бОльшинстве случаев будут работать на новой версии без каких-либо доработок.

Не в сети

#11 2013-05-24 00:28:16

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

irbees2008 написал:

сначала поддержи проект,хотя бы ссылкой,а потом проси помощи,а то больно умный нашелся

Я проект поддержу, когда закончу свой. Я не обязан отчитываться перед невоспитанной молодёжью, представленной в твоём лице.
"Хотя бы ссылкой" Может тебе лично денег выслать? smile
"Больно умный" Если больно - терпи, коль мужик. Я обратился за помощью, а ты меня сначала в чём-то упрекаешь, а потом ещё и хамишь.
Держи себя в рамках. Здесь люди довольно сложной интеллектуальной работой ведь занимаются, а не достоинствами меряются.

Не в сети

#12 2013-05-24 01:46:40

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Заголовок письма на почтовом сервисе mail.ru

lol

Не в сети

#13 2013-05-24 16:59:32

FOQRussia
Участник
Откуда Мыски
Зарегистрирован: 2012-03-11
Сообщений: 156
Рейтинг :   
Сайт

Re: Заголовок письма на почтовом сервисе mail.ru

Меня поражают люди, просящие помощи, но убирающие копирайт двига....

Не в сети

#14 2013-05-24 21:59:12

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Заголовок письма на почтовом сервисе mail.ru

Прям закидали камнями

Не в сети

Подвал раздела

Работает на FluxBB