2012-11-30 30 views
9

Potrzebuję generować niemieckie e-maile zawierające znaki umlaut. W samym e-mailu działa to doskonale, ale nie w temacie wiadomości e-mail. Próbowałem wielu różnych liter umlaut i wszystkie wydają się działać z wyjątkiem ü. Próbowałem również różne biblioteki elektronicznej (HTMLMimeMail & PHPMailer) i oboje nie na to:Jak ustawić umlaut ü w temacie mailowym

$mail = new htmlMimeMail(); 
$mail->setTextEncoding("base64"); 
$mail->setHTMLEncoding("base64"); 
$mail->setTextCharset("UTF-8"); 
$mail->setHTMLCharset("UTF-8"); 
$mail->setHeadCharset("UTF-8"); 
$mail->setSMTPParams(mailinglist_smtp_host,mailinglist_smtp_port); 
$mail->setHtml("test"); 
$mail->setFrom("[email protected]");  

$mail->setSubject("The ï, ö, ë, ä, and é work, but when adding the ü it doesn't"); 

$recipients[] = "[email protected]";  
$mail->send($recipients); 

&

$mail = new PHPMailer(); 
$mail->IsMail(); 
$mail->FromName = 'test'; 
$mail->From = '[email protected]'; 
$mail->AddAddress("[email protected]"); 
$mail->Subject = "The ï, ö, ë, ä, and é work, but when adding the ü it doesn't"; 
$mail->Body = "test";  
$mail->Send(); 

Może ktoś mi pomóc znaleźć źródło i rozwiązanie tego problemu?

Odpowiedz

8

Powinieneś quoted-printable zakodować nagłówek tematu.

Jak to:

$mail->Subject = "=?UTF-8?Q?" . quoted_printable_encode("The ï, ö, ë, ä, and é work, but when adding the ü it doesn't") . "?="; 

Cytowany druku kodowania w PHP: http://www.php.net/manual/en/function.quoted-printable-encode.php

Edit: $mail->CharSet = "UTF-8"; spełnił swoje zadanie.

+0

Dzięki, ale to nie rozwiązało. Obiekt stał się teraz: =? UTF-8? Q? = = C3 = AF, = C3 = B6, = C3 = AB, = C3 = A4, i = C3 = A9 działa, ale przy dodawaniu == C3 = BC to nie? = – Sander

+4

Hmm, może wystarczy dodać '$ mail-> CharSet =" UTF-8 ";' i usunąć elementy z cudzysłowami. Wypróbuj i daj mi znać, jak to działa! –

+0

Super, który wykonał zadanie dla PHPMailera :). Dzięki. Teraz, jak widać w moim kodzie mimemail, próbowałem opcji podobnej do tej, ale najwyraźniej brakowało mi właściwego ustawienia. Czy może wiesz, co muszę ustawić w mimemail, aby zastosować tę samą poprawkę? – Sander