Ergebnis 1 bis 10 von 10

Thema: Fehler beim speichern wenn Text Emoticon enthält.

  1. #1
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard Fehler beim speichern wenn Text Emoticon enthält.

    Hallo,

    Contao Version 4.9.37
    PHP 7.4.33

    Beim speichern eines Inhaltelements vom Typ Text bekomme ich folgenden Fehler wenn der Text ein Emoticon enthält.

    Code:
    An exception occurred while executing 'UPDATE tl_content SET `text`='????
    In die Datenbak direkt lässt sich das Emoticon speichern. Contao gibt dann jedoch nur ein ? aus.


    Ein Update auf Contao Version 4.13.14 / PHP 8.1.13 behebt das Problem auch nicht.
    Hier wird folgender Fehler ausgegeben.

    Code:
    An exception occurred while executing a query: SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\xA4\xAF

    Auf der Demo-Seite von Contao können Emoticons ohne Fehler gespeichert werden.


    Woran kann das liegen?


    Viele Grüße
    Bastian

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.088
    Partner-ID
    10107

    Standard

    Poste deine config.yaml.
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard

    Code:
    doctrine:
      dbal:
        connections:
          default:
            options:
              1002: "SET SESSION sql_mode=(SELECT CONCAT(@@sql_mode, ',TRADITIONAL'))"
              
    contao:
      url_suffix: ""
    Mit folgender config.yml gleiches Verhalten.

    Code:
    doctrine:
      dbal:
        connections:
          default:
            default_table_options:
              charset: utf8mb4
              collate: utf8mb4_unicode_ci
              collation: utf8mb4_unicode_ci    
            options:
              1002: "SET SESSION sql_mode=(SELECT CONCAT(@@sql_mode, ',TRADITIONAL'))"
              
    contao:
      url_suffix: ""

  4. #4
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard

    Code:
    1002: "SET SESSION sql_mode=(SELECT CONCAT(@@sql_mode, ',TRADITIONAL'))"
    geändert in

    Code:
    1003: "SET SESSION sql_mode=(SELECT CONCAT(@@sql_mode, ',TRADITIONAL'))"
    Die Fehlermeldung ist nun weg aber es werden keine Emoticon ausgegeben sondern ????

  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.088
    Partner-ID
    10107

    Standard

    Sicher, dass deine Datenbank und Felder auf utf8mb4 sind?
    » sponsor me via GitHub or PayPal or Revolut

  6. #6
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard

    Ja, Datenbank und Felder sind auf utf8mb4_unicode_ci.

  7. #7
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.088
    Partner-ID
    10107

    Standard

    Hast du evt. in deiner localconfig ein anderes Charset definiert?
    » sponsor me via GitHub or PayPal or Revolut

  8. #8
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard

    Nein leider auch nicht.

  9. #9
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard

    Ich habe nun mal beim Hoster über den Softwaremanager Contao 4.9 und 4.13 installiert.

    Bei Contao 4.9 kommt keine Fehlermeldung es werden aber auch nur ???? anstatt den Emoticons gespeichert.

    Bei Contao 4.13 kommt wie gehabt folgende Fehlermeldung:

    Code:
    An exception occurred while executing a query: SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\xA4\xAF

    Somit sollte das Problem beim Hoster liegen.
    Ich erstelle hier mal ein Ticket.

  10. #10
    Contao-Nutzer
    Registriert seit
    29.12.2011.
    Beiträge
    109

    Standard

    Mit folgender config.yml konnte das Problenm gelöst werden.

    Code:
    doctrine:
      dbal:
        connections:
          default:
            options:
              1002: "SET SESSION sql_mode=(SELECT CONCAT(@@sql_mode, ',TRADITIONAL')), NAMES utf8mb4"
              
    contao:
        url_suffix: ""

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •