Ergebnis 1 bis 13 von 13

Thema: Emoji in RSCE Textfeld führt zu Fehler

  1. #1
    Contao-Nutzer
    Registriert seit
    24.10.2022.
    Beiträge
    6

    Standard Emoji in RSCE Textfeld führt zu Fehler

    Ich habe vor kurzem eine Contao Instanz von 4.13 auf 5.3 aktualisiert. Seitdem wird der Contao Fehlerbanner ganz unten nach dem Footer angezeigt, wenn eines der RSCE Inhaltselemente Emoji enthält. Der Emoji wird allerdings ohne Probleme korrekt ausgegeben. In den Fehlerlogs finde ich nichts dazu. Besonders interessant ist auch, dass bei manchen Emoji (z.B. rotes Herz) kein Fehler kommt, bei anderen (z.B. gelbes Herz) schon. An der Codierung der Datenbanktabelle kann es ja eigentlich nicht liegen, RSCE speichert das soweit ich weiß in binary.
    Hatte jemand hier schon einmal ein ähnliches Problem?

    PHP 8.3
    Contao 5.3.40
    RockSolid Custom Elements 2.4.14
    Geändert von Tim Greller (20.11.2025 um 11:52 Uhr)

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

    Standard

    Zitat Zitat von Tim Greller Beitrag anzeigen
    Seitdem wird der Contao Fehlerbanner ganz unten nach dem Footer angezeigt
    Nutze den Debug-Modus und poste den Stack Trace davon.
    » sponsor me via GitHub or Revolut

  3. #3
    Contao-Urgestein
    Registriert seit
    24.02.2021.
    Beiträge
    1.820
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Tim Greller Beitrag anzeigen
    An der Codierung der Datenbanktabelle kann es ja eigentlich nicht liegen
    Doch, könnte es -> https://blog.novatrend.ch/2017/05/08/was-ist-uft8mb4/

    Zitat Zitat von Tim Greller Beitrag anzeigen
    RSCE speichert das soweit ich weiß in binary.
    Je nachdem ob ein standard field verwendet wird, speichert es RSCE dann auch im Standardfield. Würde ich also nicht ausschließen.

    Zitat Zitat von Tim Greller Beitrag anzeigen
    Hatte jemand hier schon einmal ein ähnliches Problem?
    Ja, hier zum Beispiel: https://github.com/oveleon/contao-go...ndle/issues/14

  4. #4
    Contao-Nutzer
    Registriert seit
    24.10.2022.
    Beiträge
    6

    Standard

    Zitat Zitat von zoglo Beitrag anzeigen
    Je nachdem ob ein standard field verwendet wird, speichert es RSCE dann auch im Standardfield. Würde ich also nicht ausschließen.
    Nein, Standard Field wird hier nur für die Überschrift verwendet. Habe jetzt nochmal speziell den Blob für besagtes Element mit Emoji angeschaut und dort steht wie zu erwarten "<p>Lorem Ipsum \ud83d\udc9b<\/p>". Also in der Datenbank passt aus meiner Sicht weiterhin alles.

    Im Debug-Modus sehe ich trotzdem keine Fehlermeldung, nur ein paar Deprecation Warnings vom Backend etc.

  5. #5
    Contao-Urgestein
    Registriert seit
    24.02.2021.
    Beiträge
    1.820
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Tim Greller Beitrag anzeigen
    Im Debug-Modus sehe ich trotzdem keine Fehlermeldung, nur ein paar Deprecation Warnings vom Backend etc.
    Dann verdecken diese wohl die Fehlermeldung. Diese solltest du erst einmal beheben (womöglich kommen diese durch andere Erweiterungen), danach solltest du die richtige Fehlermeldung analysieren.

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

    Standard

    Zitat Zitat von Tim Greller Beitrag anzeigen
    Im Debug-Modus sehe ich trotzdem keine Fehlermeldung, nur ein paar Deprecation Warnings vom Backend etc.
    Evt. tritt der Fehler während dem Indexing auf dann. Truncate aber vor deinem Test immer die Tabelle tl_cron_job
    » sponsor me via GitHub or Revolut

  7. #7
    Contao-Nutzer
    Registriert seit
    24.10.2022.
    Beiträge
    6

    Standard

    Zitat Zitat von zoglo Beitrag anzeigen
    Dann verdecken diese wohl die Fehlermeldung. Diese solltest du erst einmal beheben (womöglich kommen diese durch andere Erweiterungen), danach solltest du die richtige Fehlermeldung analysieren.
    Das ändert ja trotzdem nichts daran, dass ich für Frontend-Aufrufe keine Fehlermeldungen bekomme. Backend läuft, Wert steht richtig in der DB. Nur die Ausgabe verursacht dann einen Fehler (funktioniert aber ansonsten auch einwandfrei).
    Oder greift der Debug-Modus nur für das Contao Admin Interface und nicht für Fehler beim Rendering?

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

    Standard

    Nein, aber wenn der Fehler beim Frontend Search Indexing auftritt, dann bekommst du diesen Fehler im Debug-Modus nicht, weil im Debug-Modus nichts indexiert wird.
    » sponsor me via GitHub or Revolut

  9. #9
    Contao-Nutzer
    Registriert seit
    24.10.2022.
    Beiträge
    6

    Standard

    Verstehe, danke :)
    Gibt es einen Weg, wie ich an die Fehlermeldungen komme, die während des Indexings geworfen werden?

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

    Standard

    Hm, du könntest, temporär, in der SearchIndexListener::needsIndex() Funktion ganz am Anfang ein return true; hinzufügen, damit einfach immer indexiert wird - also auch im Debug-Modus. Idealerweise machst du das aber nur in einer lokalen Kopie der Contao Installation. Bzw. nach dem Debugging, und nachdem du diese Änderung wieder rückgängig gemacht hast, musst du auf jeden Fall den Suchindex löschen lassen.
    » sponsor me via GitHub or Revolut

  11. #11
    Contao-Nutzer
    Registriert seit
    24.10.2022.
    Beiträge
    6

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Hm, du könntest, temporär, in der SearchIndexListener::needsIndex() Funktion ganz am Anfang ein return true; hinzufügen, damit einfach immer indexiert wird - also auch im Debug-Modus. Idealerweise machst du das aber nur in einer lokalen Kopie der Contao Installation. Bzw. nach dem Debugging, und nachdem du diese Änderung wieder rückgängig gemacht hast, musst du auf jeden Fall den Suchindex löschen lassen.
    Danke, dadurch sehe ich jetzt zumindest endlich die Fehlermeldung. Für andere mit ggf. ähnlichem Problem: SearchIndexListener::needsIndex() liegt in /vendor/contao/core-bundle/src/EventListener, hier den Check auf den noindex-Tag in Zeile 100 temporär entfernen.

    Der Fehler ist folgender:

    HTML-Code:
    An exception occurred while executing a query: SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x98\x8A</...' for column 'body' at row 1
    und liegt wohl am MessageBus. Die Datenbanktabellen sind alle auf utf8mb4_unicode_ci eingestellt, auch tl_message_queue.body. Hast du eine Idee an was es sonst liegen könnte?

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

    Standard

    Hm ja sehr strange. Evt. kannst du einen (ggf. bereinigten) Datenbank-Dump zur Verfügung stellen? Also inkl. dem RSCE mit dem Emoji.
    » sponsor me via GitHub or Revolut

  13. #13
    Contao-Nutzer
    Registriert seit
    24.10.2022.
    Beiträge
    6

    Standard

    Ich habe die Indexierung jetzt einfach mit

    Code:
    contao:
      search:
        listener:
          index: false
    in der config.yml ausgeschalten. Die Seite benutzt sowieso keine Suche, also sollte kein Problem sein.

    Vielen lieben Dank für deine freundliche Hilfe! Mich würde immer noch sehr interessieren was dort falsch läuft, aber über Weihnachten ist das jetzt erst mal die beste Lösung. Schöne Zeit dir!

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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