mailto Sonderzeichen
Ist es ein Weg, um die E-Mail-client ( Outlook ) übernehmen Sie Sonderzeichen aus der Mail-link in html? Ich bin versucht zu haben, einen mailto-link mit deutschen Zeichen im Körper, aber in Outlook bekomme ich nur seltsame Zeichen.
Dank
InformationsquelleAutor der Frage | 2009-06-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verbrachte ich nur 2 Tage Untersuchung dieser Frage. Unser Problem war, dass mailto: - links auf unsere utf-8-codierte web-Seiten haben nicht die Arbeit für Outlook-Benutzer, wenn Sie die subject= string enthalten nicht-ascii-Zeichen, wie e.g Norwegische Zeichen. Ein Beispiel ist:
"mailto:[email protected]?subject=julegløgg og fårikål"
Von dem, was ich bisher gelernt habe, ist Outlook einfach nicht mit etwas anderen als ASCII und iso-8859-1-Zeichen. Also, wenn Sie versuchen, klicken Sie auf die obigen mailto-link (entweder vom IE oder Firefox), Outlook nicht zu entschlüsseln, die Zeichen, die wir das Thema gebrochen und mit "komischen" Zeichen.
So war der nächste Schritt, um zu versuchen zu re-codieren Sie die Seiten in ISO-8859-1. Was wir Taten, war auf das original zu ersetzen mailto-link auf die utf-8-Seite mit einem link zu einer "E-Mail-zu-iso"-service, wie zum Beispiel diese:
http://url.com/service.php?service=util.mailtoencode&mailto=mail%40coretrek.no%3Fsubject%3Demne+%C3%B8%C3%A6%C3%A5+emne
Diese Seite konvertieren der E-Mail-Zeichen iso-8859-1 und dann die Ausgabe der gesamte Inhalt der Seite in iso-8859-1. Ein javascript auf der Seite, mit "Lage.href='mailto:...'" wurde verwendet, um öffnen Sie die client-E-Mail-client automatisch.
Bisher alles schien ok. Das funktioniert in Internet Explorer, sowohl mit Thunderbird und Outlook (getestet auf IE7 auf WinXP mit Outlook express und TB 2).
ABER das problem ist jetzt eigentlich Firefox. Es scheint, dass Firefox ist nicht in der Lage zu entschlüsseln url-codierte urls mit Zeichen, die nur in ISO-8859-1, aber nicht in ASCII (wie die Norwegische å, vertreten durch %E5 wenn codiert). Das gleiche å wird richtig behandelt, wenn die-Seite-Codierung ist utf-8, aber es scheint, wie die Firefox-Entwickler vergessen haben zu testen, Sonderzeichen zusammen mit der ISO-8859-1 Zeichensatz.
Das Ergebnis ist, dass Firefox übergibt ein un-dekodierten string (immer noch mit %E5 intstead von å), um die E-Mail-client. Und, erstaunlich, das wird richtig behandelt von Outlook (die verwaltet die zum decodieren der Zeichenfolge selbst), aber NICHT von Thunderbird, der hat wahrscheinlich die gleichen Fehler wie Firefox. Wenn Sie keine url-codieren, das Thema, der string wird richtig übergeben, um Thunderbird, nicht aber Outlook.
Wir haben auch schon versucht andere codierungsmethoden, wie php htmlentities, htmlspecialchars, base64-Codierung usw., aber alle von Ihnen ausfällt, eine oder andere Weise.
Also, zusammengefasst:
Seiten in utf-8 codiert:
IE scheitert immer
FF -> Thunderbird: OK
FF -> Outlook: FEHLER
Seiten, codiert in iso-8859-1:
DH: OK
FF -> Thunderbird: schlägt Fehl, wenn Thema ist url-kodiert, ok, wenn nicht)
FF -> Outlook: schlägt Fehl, wenn Thema ist nicht url-codiert, ok, wenn codiert)
(das ist Windows, unter Ubuntu Linux FF und TB funktioniert immer).
Hoffe, dies war hilfreich für andere mit dem gleichen problem.
InformationsquelleAutor der Antwort Arve Skjørestad
In PHP-ich denke, die Funktion, die funktioniert am besten mit Outlook ist rawurlencode()
InformationsquelleAutor der Antwort Mario Chueca
Ich denke, mit ein urlencode-Methode sollte das tun, was du bist suchen für. JavaScript hat .encodeURI () - Methoden für string-Objekte, und .NETTO hat die HttpUtility.UrlEncode Methode.
Welche Sprache verwenden Sie?
InformationsquelleAutor der Antwort John Weldon
Tatsächlich, die Lösung ist http://blogs.msdn.com/ie/archive/2007/02/12/International-Mailto-URIs-in-IE7.aspx und es ist nicht schön.
Grundsätzlich im IE 7 und 8 muss der Benutzer aktiviert den erweiterten Einstellungen in Internet Optionen, etwas, das 100% der user nicht wissen, wird das nicht aktiviert haben.
InformationsquelleAutor der Antwort yandr
Müssen Sie aktivieren Sie die UTF-8-Unterstützung für das mailto: Protokoll
Aus dem outlook-Hauptfenster, klicken Sie auf Extras -> Optionen -> E-mail-format -> internationale Optionen -> "Enable UTF-8-Unterstützung für mailto: Protokoll".
InformationsquelleAutor der Antwort Dean Rather
rawurlencode()
- Funktion funktioniert am besten mit outlook,getestet mit Firefox, Chrome & IE
InformationsquelleAutor der Antwort Kiran Gohel
Als yandr angezeigt, dieses Problem ist ein ständiges problem mit Outlook.
Microsoft hat veröffentlicht Dokumentationdie besagt, dass ordnungsgemäß konfiguriert Outlook 2003 und 2007, befestigt an einem richtig konfigurierten Exchange-server wird standardmäßig auf Unicode-Unterstützung, was aber nicht wirklich helfen, Sie mit der öffentlichkeit.
Referenz, der "standard" auf den Sie verweisen möchten, für diese ist RFC 2047.
Die Lösung, die ich umgesetzt haben, um dieses Problem zu umgehen (mit dem schwedischen, eigentlich) ist die Verwendung eines web-Formulars, statt einen mailto: link. Es erfordert mehr setup auf der server-Seite, aber gibt Ihnen viel mehr Kontrolle über das Kontakt-Prozess.
Ich bin sicher, dies ist nicht, was Sie hören wollte, aber bis die Welt nicht mehr mit der Defekten software von Microsoft, werden wir weiterhin brauchen, workarounds wie dieser.
InformationsquelleAutor der Antwort ghoti
Es klingt wie Sie müssen die Seite, auf der sich der mailto-link werden in der Codierung, Outlook erwartet. Ohne zu wissen, mehr über die situation, ich würde versuchen, die Kodierung der Seite, die in UTF-8 und ISO-8859-1.
Dem jeweiligen 'mehr über die situation" wäre das was für komische Zeichen angezeigt werden und welche Seite die Codierung ist derzeit.
InformationsquelleAutor der Antwort chaos
Wenn man mit SharePoint 2010, es scheint, hat Microsoft dieses Problems bewusst, und lieferte einige Funktionen, diese zu lösen.
Folgenden wird richtig entfliehen Sie dem link zur aktuellen Seite
escapeProperly(escapeProperlyCoreCore($(location).attr('href'), false, false, true))
InformationsquelleAutor der Antwort PelleLauritsen