dedlfix: Mail Codierung - Problem noch immer nicht gelöst

Beitrag lesen

echo $begrüßung;

1.) 2.) 3.) 6.) 7.)

Soweit richtig, wobei aber 3. und 7. doppelt ist. Solange du nicht davon ausgehen musst, dass der Hoster die AddType-Direktive sperrt, kannst du die nehmen und auf header() verzichten.

4.) _Alle_ meine css-Ressourcen beginnen mit einer "@charset "utf-8";" Angabe.

Auch richtig, aber vielleicht überflüssig. Notwendig ist das nur, wenn du UTF-8-relevante Zeichen verwendest. Die kommen beispielsweise dann ins Spiel, wenn du http://de.selfhtml.org/css/eigenschaften/pseudoformate.htm#before_after@title=:before/:after und dort mittels "content:" Texte mit Nicht-ASCII-Zeichen einfügst. Die anderen Eigenschaften verwenden nur ASCII und dafür braucht es keine charset-Angabe. Kommentare sind zwar davon betroffen, doch die spielen keine Rolle.

5.) Wenn ich Daten (mit $kommando=$db->prepare($sql), $kommando->bind_param und $kommando->execute)an meine mysql datenbank schicke, dann kommt davor _immer_ eine "$db->set_charset("utf8");" Angabe.

Einmalig nach dem Verbindungsaufbau reicht. Ich gehe davon aus, dass diese Methode irgendwie zu einem Aufruf von mysql_set_character_set() aus der MySQL-Client-API führt oder zumindest ein "SET NAMES"-Statement ausführt.

Ich gehe davon aus, das ist alles, was ich tun kann sowie soll/muß, damit wirklich _überall_ die Verwendung von utf-8 gewährleistet wird. Ist das richtig so?

Ja. Vergessen in der Aufzählung hast du die Kodierung der Datenfelder in deinen Datenbanktabellen.

Das Ziel ist der Versand einer Mail [...]
Dazu habe ich nun folgenden PHP-Code:

Das sieht soweit in Ordnung aus, außer an dieser Stelle:

$mailinhalt="Sehr geehrter Herr Mustermann-Weiß,\r\rbitte bestätigen Sie uns noch Ihre Bestellung der 3 Kühe Björn, Gülle und Agnätha.\r\rMfG\r\rJörg Mustarmann-Spär";

Ein \r alleinstehend ist sicherlich ungünstig, da diese Form des Zeilenumbruchs hauptsächlich in nicht mehr aktuellen Systemen verwendet wurde. Üblicher sind \n und \r\n.

Das führ zu Folgenden Ergebnissen:

Bei gmx.de steht [...] nun alle Umlaute/Sonderzeichen _richtig_ dargestellt.

Das zeigt, dass GMX seine Hausaufgaben gemacht hat.

Bei der Webmailapplikation meines Webspace-Providers [...] steht also als Betreff: "Bestellbestätigung Ihrer 3 Wunschkühe - M ailtest 003". Woran das liegt, ist mir unerklärlich.

Da kann man zwar Vermutungen anstellen, doch anhand des originalen Text der Betreff-Headerzeile kann man dies deutlich besser tun.

Bei yahoo.de ein _sehr_ seltsames Verhalten. Alle Sonderzeichen werden richtig dargestellt, allerdings gibt es in der Mail selbst _keine_ Zeilenumbrüche.

Das wird an den komischen Zeilenumbruchszeichen liegen, beziehungsweise daran, dass Yahoo diese anscheinend als Zeilenumbruch nicht erkennt.

Bei cooltoad.com, einem Freemailprovider, das _absolute_ Chaos:

Seine Webseiten verwenden ISO-8859-1. Und so wie es aussieht hat er viel Verbesserungspotential ...

Da steht beim Empfänger nur ein "=?UTF-8?Q?J=C3=BCrgen=20Mustermann-Wei=C3=9F?=", als Absender "=?UTF-8?Q?J=C3=B6rg=20Mustermann-Sp=C3=A4r?="

Beides richtig, aber von der unkalten Kröte beim Dekodieren der Mail unberücksichtigt gelassen.

und als Mailinhalt, wieder in einer Wurst durchgeschrieben, steht: "Sehr geehrter Herr Mustermann-Weiß,bitte bestätigen Sie uns noch Ihre Bestellung der 3 Kühe Björn, Gülle und Agnätha.MfGJörg Mustarmann-Spär".

Sieht aus, als ob er von Zeichenkodierungen noch nicht viel gehört hat. Die Wurst wird wieder auf \r zurückzuführen sein.

Liegen die genannten Darstellungsfehler an mir?

Zusammenfassend: Bis auf den Zeilenumbruch bist du unschuldig. Workarounds, außer auf ISO-8859-1 umzustellen, scheinen mir auch nicht erfolgversprechend.

echo "$verabschiedung $name";

0 57

Sonderzeichen bei Mail mit Inhalt aus Formular

Brombeermilchtrinker
  • php
  1. 0

    Ursprungsproblem gelöst / nun anderes Codierungsproblem

    Brombeermilchtrinker
    1. 0
      Markus**
      1. 0
        Brombeermilchtrinker
    2. 0
      Sven Rautenberg
      1. 0
        Brombeermilchtrinker
        1. 1
          Sven Rautenberg
          1. 0
            Brombeermilchtrinker
        2. 0
          Jens Holzkämper
    3. 0
      dedlfix
      1. 0
        Brombeermilchtrinker
        1. 0
          dedlfix
          1. 0
            Brombeermilchtrinker
            1. 0
              dedlfix
              1. 0
                Sven Rautenberg
              2. 0
                Brombeermilchtrinker
                1. 0
                  dedlfix
                  1. 0
                    Brombeermilchtrinker
                    1. 0
                      Jens Holzkämper
                    2. 0
                      Vinzenz Mai
                      1. 0
                        Brombeermilchtrinker
                        1. 0
                          Vinzenz Mai
                          1. 0
                            Brombeermilchtrinker
                            1. 0
                              Brombeermilchtrinker
                              1. 0
                                Harlequin
                                1. 0
                                  Sven Rautenberg
                                2. 0
                                  Brombeermilchtrinker
                                  1. 0
                                    Jens Holzkämper
                                    1. 0
                                      Brombeermilchtrinker
                                      1. 0
                                        Jens Holzkämper
  2. 0
    Markus**
  3. 0

    Mail Codierung - Problem noch immer nicht gelöst

    Brombeermilchtrinker
    1. 0
      dedlfix
      1. 0
        Brombeermilchtrinker
        1. 0
          dedlfix
          1. 0
            Brombeermilchtrinker
            1. 0
              dedlfix
              1. 0
                at
              2. 0
                Brombeermilchtrinker
                1. 0
                  Harlequin
                  1. 0
                    Brombeermilchtrinker
                2. 0
                  dedlfix
                  1. 0
                    Brombeermilchtrinker
                    1. 0
                      dedlfix
                      1. 0

                        utf-Codierung / Verwendung von mysqli

                        Brombeermilchtrinker
                        1. 0
                          flowh
                        2. 0
                          dedlfix
                          1. 0
                            Brombeermilchtrinker
                            1. 0
                              Harlequin
                              1. 0
                                Brombeermilchtrinker
                              2. 0
                                dedlfix
                                1. 0
                                  Harlequin
                                  1. 0
                                    Brombeermilchtrinker
                            2. 0
                              flowh
                              1. 0
                                Brombeermilchtrinker
                            3. 0
                              dedlfix
                              1. 0
                                Brombeermilchtrinker