Nette\Mail – rozbité kódování

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
souki
Bronze Partner | 22
+
0
-

Používám Nette 2.0.12 na PHP 5.4.21 a u některých příjemců mi dlouhodobě blbne diakritika emailu. Nejspíš používají nějaké staré emailové klienty (nemám ale jak zjistit jaké), ale emaily z gmail.com apod jim takhle rozbité nechodí. Týká se to ale jen maximálně 1% příjemců. Dělám něco špatně nebo je problém v samotné podpoře UTF-8? Je případně možné mailer přepnout do nějakého kompatibilnějšího kódování?

$mail = new Nette\Mail\Message();
$mail->setTo("info@example.org");
$mail->setSubject("Subject");
$mail->setHtmlBody("<html>
	<head>
		<meta charset='UTF-8'>
		<meta http-equiv='content-type' content='text/html; charset=utf-8' />
	</head>
	<body>
	na základě našeho dnešního telefonického rozhovoru
	</body>
</html>");
$mail->setMailer(new Nette\Mail\SmtpMailer(array(
                'host' => 'localhost',
            )));
$mail->Send();

Příjemci ale dorazí text „na základÄ› našeho dnešnìho telefonickĂ©ho rozhovoru“. Na mojí straně všechno pracuje v UTF-8. Html hlavičku s dvojím utf-8 jsem tam přidal kdysi a vyřešilo to problém s některými webmaily. Nepředpokládám, že by to mohlo souviset.

Editoval souki (28. 10. 2013 10:02)

Jan Tvrdík
Nette guru | 2595
+
0
-

Můžeš si zkusit pohrát s $mail->setEncoding(...).