Contao-Camp 2024
Ergebnis 1 bis 6 von 6

Thema: Standardmäßige Kodierung von HTML-Entities aus Formulardaten

  1. #1
    Contao-Nutzer Avatar von fl0
    Registriert seit
    13.11.2019.
    Ort
    OWL
    Beiträge
    17

    Fehler Standardmäßige Kodierung von HTML-Entities aus Formulardaten

    Es besteht das Problem, dass bei per Formular übermittelten Daten, auf die mittels der Input::post() Methode zugegriffen wird, bestimmte Sonderzeichen wie Anführungszeichen nun in HTML-Entities umgewandelt werden.

    Ich vermute, dass dies mit dem vor kurzem ausgeführten Sicherheitsupdate von Contao 4.4.55 auf 4.4.56 zusammenhängt.

    Bereits getestet habe ich, den zweiten Parameter $blnDecodeEntities der Input::post() Methode auf true zu setzen, was aber keinerlei Veränderung bewirkt. Durch die kodierten HTML-Entities kommt es teilweise zu Fehlern bei der Umwandlung von aus hidden-Feldern übermittelten JSON-Strings. Man könnte das Problem jetzt beheben, in dem man die Werte anschließend nochmal mit einem zusätzlichem html_entity_decode umwandelt. Da aber sehr viele Dateien betroffen sind, wäre die Anpassung dieser äußerst mühsam.

    Gäbe es noch eine andere Möglichkeit, wie ich diese Problematik beheben kann?

  2. #2
    Contao-Nutzer
    Registriert seit
    26.10.2012.
    Beiträge
    89
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mit
    PHP-Code:
    Input::postRaw() 
    solltest du in der Regel den Original-Wert des Formular-Feldes erhalten.

    Ansonsten kann auch der Symfony-Request verwendet werden:
    PHP-Code:
    System::getContainer()->get('request_stack')->getCurrentRequest()->request->get(
    In beiden Fällen sollte man bei der Ausgabe auf einer HTML-Seite jedoch unbedingt Insert-Tags strippen und HTML-Zeichen enkodieren.

  3. #3
    Contao-Fan Avatar von typolighter
    Registriert seit
    02.07.2009.
    Beiträge
    338

    Standard

    Ich klinke mich hier mal ein: Ich hab das Problem, dass in einem Javascript, das ich auf einer Seite meiner Website eingebunden habe (im Inhaltselement HTML) die Anführungszeichen im Quelltext als HTML-Entitiy ausgegeben werden. Sprich aus dem Anführungszeichen " wird
    Code:
    "
    .
    Contao 4.9.18
    Hat jemand eine Idee wie ich das vermeiden kann? Das JS muss als externes Script direkt auf der Seite eingebunden werden.

  4. #4
    Contao-Fan Avatar von herr rilke
    Registriert seit
    29.01.2011.
    Ort
    Münster
    Beiträge
    384

    Standard

    hallo @typolighter,

    wie hast du das problem gelöst, ich habe den gleichen effekt ;(

  5. #5
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.060
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Eventuell ein leeres Inhaltselement HTML und das Javascript ins Template?

  6. #6
    Contao-Fan Avatar von herr rilke
    Registriert seit
    29.01.2011.
    Ort
    Münster
    Beiträge
    384

    Daumen hoch

    ja, habe eine eigene javascript-datei angelegt, die ich dann im element per <script src...> einbinde

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
  •