2009-03-25 6 views
2

, die derzeit PHP5 mit htmlMimeMail 5 (http://www.phpguru.org/static/mime.mail.html) verwenden, um HTML-E-Mail-Kommunikation zu senden. Wurde ersetzt durch zufällige Zeichen zu sehen, Probleme mit einer Anzahl von Empfängern, die Gleichheitszeichen ein Beispiel: „Gut mor = ing Unsere Schule unseren Newsletter sendet = und Informationen über eine Firma namens ...“E-Mails, die über php5 + htmlMimeMail gesendet werden, werden mit zufälligen Zeichen empfangen, ersetzt durch =

haben Legen Sie die E-Mail-Text-, HTML- und Header-Codierung auf UTF-8 fest. Die Vorlagendateien, die von PHP für die E-Mail geladen werden (nur "(") Text/HTML mit ein paar PHP-Tags in ihnen) sind beide in UTF-8 kodiert.

Die interessante Sache ist, dass ich das Problem auf keinem meiner E-Mail-Clients duplizieren kann, und keine Informationen finden kann, indem ich Yahoo/googlies suche, die mich auf das Problem hinweisen würden !!

Antwort

2

Versuchen mit 8-Bit-Codierung zu senden:

$message->setTextEncoding(new EightBitEncoding()); 
$message->setHTMLEncoding(new EightBitEncoding()); 
+0

Setzen Sie mich in die richtige Richtung; musste Base64Encoding verwenden. – spronkey

0

Ich vermuten, Ihr Problem zu älteren Versionen von Exchange verwendet ist. Equal signs at end of line:

Es kann nicht die zitierte druckbare Sache mit hohen/niedrigen Zeichen oder die Codierung sein. Auch an anderer Stelle auf dieser Seite heißt es:

HINWEIS: Ein Bug (? "Feature") in Exchange kann Leitung verursachen Feeds ersetzt mit Gleichheitszeichen, wenn Rich-Text-Mail deaktiviert ist.

+0

Schöner finden! Aber die ersetzten Zeichen sind nicht am Ende der Zeile oder Zeilenvorschübe, also bin ich mir nicht sicher, wo das mich verlässt! – spronkey

+0

ya, meine erste Schätzung war qp, bis ich das Beispiel gelesen habe. – sfossen

0

Ich hatte ein ähnliches Problem, aber meiner war ein wenig anders. Da ich über diesen Thread gestolpert bin, der nach der Antwort gesucht hat und es mir geholfen hat, es zu finden, dachte ich, ich könnte diese verwandte Antwort auch hier posten.

In meinem Fall wurden Sonderzeichen in E-Mails durcheinander gebracht sogar durch die tatsächliche mb_detect_encoding der gesendeten Text-Strings war "UTF-8" und wenn ich sie echote sie sah gut aus.

So hatte ich uns auf die Funktion

$message->setTextCharset('UTF-8') 

und

$message->setHTMLCharset('UTF-8')