Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHP Umlaute trotz UTF-8 usw falsch dargestellt

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] PHP Umlaute trotz UTF-8 usw falsch dargestellt

    Hallo zusammen

    Ich reiss mir schon fast die Haare aus wegen den sch... UTF-8 Mails...

    Von anfang an: Ich habe ein Formular, liest einen Text ein.
    Dieser wird dann per Mail verschickt.
    Die Seite ist im Editor UTF-8, hat einen UTF-8-header, wird per meta als utf-8 codiert und das html-mail, welches ich mit php erzeuge, hat ebenfalls einen utf-8-header.

    Nun werden umlaute und deutsche Spezialzeichen aber immer noch falsch dargestellt, und ich weiss echt nicht mehr weiter. utf8_encode / decode hab ich beides probiert, geht nicht. Ich bekomme immer diese dummen Zeichen:

    ööäöüöäöüäöüööä

    Und langsam regts mich auf, weil nichts gehen will... hat jemand einen tipp was ich sonst noch versuchen kann?

    Danke vielmals und grüsse

    flo

  • #2
    "Irgendwas" von dem dir aufgelisteten wird kein UTF-8 sein obwohl du glaubst es wäre UTF-8.

    Ggf. hast du nur das Zielscript des Formulars vergessen oder verwendest du ein Affenformular?

    Setzt du den UTF-8 Header der Mail im Script oder hast du direkt in deinem E-Mail Client den Header nachgeschaut?
    "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

    Kommentar


    • #3
      also, ich setze utf8 in allen dokumenten, da diese includiert werden in die index.php und die hat den utf-8 header. das mail habe ich ebenfalls per php header als utf8 gesetzt. Nix genutzt.

      nun hab ich zum testen mal iso-9951-8 gebraucht - und es scheint zu funktionieren... ich schaue noch ob das auch mit doppel-s und so geht...

      Kommentar


      • #4
        okaj, jetzt gehts plötzlich auch nicht mehr. sehr komisch - und vorallem ärgerlich -.-

        Kommentar


        • #5
          Ich habs wirklich überall eingestellt, Mail-header, jede seite, <meta> usw.

          Ich hab zum testen mal nur im mailheader iso-8859-1 genommen, ging beim ersten mal, danach wieder nicht.

          sowas von kompliziert und nervend ... warum kann das nicht standardmässig einheitlich geschehen

          Kommentar


          • #6
            Hoppla, sry, ich hab das Forum mit den schnellantworten noch nicht im griff sorry wegen den 3 antworten..

            Kommentar


            • #7
              Du könntest in deinem Formular noch accept-charset setzen um die Formulardaten explizit als UTF-8 / ISO zu schicken.

              Hast du aber ganz sicher im E-Mail client nachgeschaut (z.B. Thunderbird) ob da wirklich UTF-8 ankommt? Nur weil du es im Script setzt heißt es noch lange nicht das es auch wirklich so ankommt. Weil bisher sagst du nur du setzt den Header, aber nicht das du ihn dir mal angeschaut hast.
              "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

              Kommentar


              • #8
                Mach das mal ohne das Formular:

                $zumailen = "Düsseldorfer Bälger schütten Öl auf die Straße.";

                und mail das mit dem Script raus. Dann poste mal den Mail-Header.
                [PHP]if ($var != 0) {
                $var = 0;
                }[/PHP]

                Kommentar


                • #9
                  Unglaublich O.O

                  Mit direkt texteingabe gehts problemlos....

                  Das heisst es müsste ja theoretisch an der Übermittlung liegen (POST)?

                  Der Mailheader sieht folgendermassen aus:

                  PHP-Code:
                      $header  "MIME-Version: 1.0\r\n";
                      
                  $header .= "Content-type: text/html; charset=utf-8\r\n";
                      
                      
                  $header .= "From: *=YKG=* Clan <mail@mail.mail>\r\n";
                      
                  $header .= "Reply-To: $antwortan\r\n";
                      
                  $header .= "X-Mailer: PHP "phpversion(); 
                  den header in hotmail sieht man leider nicht (wie beschrieben per quelltext) aber da ist ausser viel gescripte kein mailtext/header zu finden.

                  Kommentar


                  • #10
                    Zitat von floripipo Beitrag anzeigen
                    Unglaublich O.O

                    Mit direkt texteingabe gehts problemlos....
                    .
                    Dann änder mal dein Formular ab:

                    Code:
                    <form action="" method="post" accept-charset="UTF-8">
                    
                    </form>
                    Damit müsstest du utf-8 forcieren.

                    http://de.selfhtml.org/html/formular...en.htm#bereich
                    "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

                    Kommentar


                    • #11
                      WOAHHUUU IHR HABTS ECHT DRAUF!!

                      Das hat 1. voll hingehauen und 2. meinen Abend verschönert DANKE VIELMALS FÜR DIE TIPPS!

                      lg flo

                      Kommentar


                      • #12
                        Und vergiss die mail()-Anweisung, sondern sende deine mails mit einer fertigen Klasse aus, z.B. PHPmailer. Dann kriegst du auch vollständige Mailheader und musst dich nicht wundern, warum Mails manchmal nur unzuverlässig ankommen.
                        [PHP]if ($var != 0) {
                        $var = 0;
                        }[/PHP]

                        Kommentar


                        • #13
                          Zitat von floripipo Beitrag anzeigen
                          WOAHHUUU IHR HABTS ECHT DRAUF!!

                          Das hat 1. voll hingehauen und 2. meinen Abend verschönert DANKE VIELMALS FÜR DIE TIPPS!

                          lg flo
                          Das das funktioniert zeigt das deine Daten nicht in UTF-8 ankommen, die Formularseite also nicht UTF-8 ist.
                          "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

                          Kommentar

                          Lädt...
                          X