Fehlerhafte Umlaute in den Mails

Ich habe einen Blog Artikel verfasst - Wie benutze ich die Suche richtig - Bitte diesen beachten und auch umsetzen bevor Ihr ein Neues Thema eröffnet!

  • Hallo zusammen,


    ich habe eigentlich schon immer (gefühlt jedenfalls, das ist auf jeden Fall schon Jahre so) mit den Mails, die da so kommen, Umlautprobleme. So z.B. bei der Tipperinnerung heute, hier ein Auszug:


    09.12.23 15:30 Uhr: 1. FC Union Berlin - Bor. Mönchengladbach

    09.12.23 15:30 Uhr: Eintracht Frankfurt - FC Bayern München


    Die Suche hier im Forum ergab wenig treffendes, daher einfach mal ein neuer Thread. Bin mir sicher, dafür gibt es schon einen Fix. Wobei ich charset="utf-8" in den Mailrohdaten finden konnte - eventuell aber falsch formatiert oder ein anderes ähnliches Problem.


    Danke und viele Grüße,

    Roi

  • Servus Roi, hab das gleiche Problem. Es werden keine utf-8 kompatiblen Zeichen generiert bzw. dann ausgegeben. Ich komme vllt. erst am Sonntag oder Montag bei mir da mal zu suchen. Ich geb Dir mal einen Link an die Hand: https://php-de.github.io/jumpto/utf-8/

  • Danke, ich habe mir das mal grob angeschaut - ich bin kein Programmierer und pfusche immer nur hier und da im Code rum.


    Die Webseite hinter Deiner URL hat folgende Information parat:

    Zitat

    Generell ist darauf zu achten, das es zu keinen “Überkodierungen” kommt, zB wenn ein bereits als UTF-8 kodierter String erneut mittels utf8_encode() behandelt wird.

    Und das könnte in der Tat ein Thema sein, denn in reminder.php sehe ich folgendes:

    Code
    1. $info .= $itext . utf8_encode($values['heim']) ." - ". utf8_encode($values['gast'])." \n";

    Haben wir es hier ggf schon mit UTF8-Daten zu tun? Ich hab nun nicht weiter geschaut, wo die Teamnamen herkommen. Vermutlich aus der Tabelle bulitipp_teams. Und da sind die Felder schon mit utf8_unicode_ci ausgestattet.


    Also einfach utf8_encode rauswerfen? Hier und an anderen Stellen, wo auch Mails mit den hässlichen Sonderzeichen versendet werden.


    PS: Kann man irgendwie einen Mailversand triggern/testen? Also am besten nur an einzelne User bzw einzelne Mailereignisse.

  • Ja. diesen Thread hatte ich vorhin auch gefunden. Allerdings schreibt Kai ja in letztem Beitrag, dass es bei ihm half, hier schreibt er, dass er das gleiche Problem hat. Daher muss es ja was anderes sein, oder? In dem Thread ging es ja auch um Usereingaben und nicht um die Remindermails (und andere Mails). Usereingaben hab ich gar nicht getestet, also Mails mit Nachrichten von Usern, oder? Kann sein, dass ich das auch habe und die empfohlene Lösung dort dafür Besserung bringt.

  • ich würde den Tipp von Horst mal testen, ist ja nicht viel Arbeit.

    In der Tat ist das schnell umgesetzt. Aber:

    PS: Kann man irgendwie einen Mailversand triggern/testen? Also am besten nur an einzelne User bzw einzelne Mailereignisse.

    Wie teste ich das denn sinnvoll ohne ne Woche zu warten? ;-)

  • ...... Vermutlich aus der Tabelle bulitipp_teams. Und da sind die Felder schon mit utf8_unicode_ci ausgestattet.
    Also einfach utf8_encode rauswerfen? Hier und an anderen Stellen, wo auch Mails mit den hässlichen Sonderzeichen versendet werden.

    Hab jetzt mal an meiner reminder.php aus der 3.Liga einwenig experimentiert. Die Mannschaften stehen in der DB in der 'Tabelle _teams' mit ner Kollation utf8_unicode_ci bei mir in Klarschrift, sprich ohne Umlautedarstellung. Und wenn die Teams im reminder mit utf8_encode aus der DB gelesen werden kann das wegen der doppelten Kodierung zu der etwas kryptischen Darstellung halt kommen. Nur das müsste doch bei jedem und nicht nur beim Roi so sein? ?(


    An meiner reminder.php hab ich nur diese Zeile:

    Code
    1. $info .= $itext . utf8_encode($values['heim']) ." - ". utf8_encode($values['gast'])." \n";


    mit dieser Zeile ersetzt:

    Code
    1. $info .= $itext . ($values['heim']) ." - ". ($values['gast'])." \n";

    und das wurde mir danach angezeigt - so wie es sein sollte!

    Bildschirmfoto 2023-12-10 um 15.30.14.png

  • Und ja eine Änderung müsste wohl auch in der results.php vorgenommen werde. Bei der Auswertung wurde mir soeben beim Spiel Regensburg - Vik. Köln auch so ein Umlautefehler angezeigt... Vielen Dank an Agrippa 04 für die Pflege des Spiels im xdataservice

  • Hallo Kai,


    also genau das, was ich vermutete anhand Deines Links und einer kurzen Recherche im Code. Ich habe den Fix nun auch angewandt, auf die reminder.php und die results.php. Bin auf den nächsten Spieltag gespannt.


    PS: Wie machst Du das denn in Deinem Tippspiel, den Leuten die Möglichkeit zu geben, für alle drei Ligen zu tippen?


    PPS: Ich würde auch vermuten, dass das jeden betreffen müsste. Aber es auch durchaus für denkbar halten, dass es allen anderen halt egal ist. ;-)


    Viele Grüße,

    Roi

  • PS: Wie machst Du das denn in Deinem Tippspiel, den Leuten die Möglichkeit zu geben, für alle drei Ligen zu tippen?

    PPS: Ich würde auch vermuten, dass das jeden betreffen müsste. Aber es auch durchaus für denkbar halten, dass es allen anderen halt egal ist. ;-)

    1. Kann ich Dir gern im Bereich Konversation direkt mit Screenshots erklären. Meines Erachtens gab es hier von mir mal ein Beitrag, indem ich es beschrieben hatte. Es betrifft ja nicht nur die Ligen 1,2 und 3 bzw. die PL, mit soetwas ist auch eine Archivverwaltung möglich. Und dann macht die "ewige Rangliste" auch nur Sinn!

    2. Liegt vermutlich u.a. auch an diversen Providern und wie die ihre DB, in welcher Kollation, verwalten.