Ergebnis 1 bis 11 von 11

Thema: Kontaktformular, Textarea generiert keinen Zeilenumbruch

  1. #1
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard Kontaktformular, Textarea generiert keinen Zeilenumbruch

    Hallo zusammen,

    ich habe ein Kotaktformular erstellt, welches auch soweit gut funktioniert, nur beim Feld "textarea" gibts noch ein Problen. Wird beim eigegebenen Text mittels "Return" oder "Shift+Return" ein Zeilenumbruch generiert, dann ist auf der Bestätigungsseite in der Tabelle und in der E-Mail nur Fließtext zu sehen ohne Umbruch. Schau ich mir den HTML-Code im Browser dazu an, dann ist der Umbruch dort zu sehen. Ich vermute mal das Problem tritt deshalb auf weil der Text ohne <p>...</p> generiert wird. Gibt es dafür eine Lösung? Bei meinen Recherchen konnte ich bislang nichts entsprechendes finden. Für Tipps zur Lösung des Problems wäre ich sehr dankbar.

    Gruß
    Thomas

  2. #2
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Thomasge Beitrag anzeigen
    Hallo zusammen,

    ich habe ein Kotaktformular erstellt
    ... Beutel dabei?


    Was soll den mit dem Text passieren -> E-Mail, NC, Ausgabe als Text?

  3. #3
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Also wenn ich im Textaera-Feld z.B. schreibe:
    Code:
    Sehr geehrte Damen und Herren,
    (Leerzeile)
    Lorem ipsum dolor sit amet, consectetur adipiscing elit.
    Dann wird mir in der Tabelle per {{post::message}} auf der Bestätigungsseite und in der E-Mail per ##form_message## folgendes ausgegeben:
    Code:
    Sehr geehrte Damen und Herren, Lorem ipsum dolor sit amet, consectetur adipiscing elit.
    Im HTML-Code sieht es dann so aus:
    HTML-Code:
    <td class="col_1 col_last">
      "Sehr geehrte Damen und Herren,
    (Leerzeile)
      Lorem ipsum dolor sit amet, consectetur adipiscing elit."
    </td>
    Das bedeutet eigentlich, dass weder ein harter noch der weicher Zeilenumbruch übergeben wird an die Tabelle oder an die E-Mail. Anstatt einen Zeilenumbruch einzufügen wird lediglich ein Leerzeichen generiert, da nach dem Komma ein direkter Zeilenumbruch stattgefunden hat

    Welche Möglichkeiten habe ich hier, damit ein Zeilenumbruch generiert wird? Bislang kenne ich auch kein Kontaktformular wo dies nicht möglich wäre.
    Danke!


    Gruß
    Thomas

  4. #4
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    m.E. musst Du versuchen mit https://www.php.net/manual/de/function.nl2br.php das umzuwandeln - ggf. eigenen Inserttag schreiben

  5. #5
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Vielen Dank für den Tipp, beim Inserttag hat es schon mal geklappt und die Nachricht wird wie gewünscht mittels Tabelle auf der Webseite richtig ausgegeben. Nur bei der Ausgabe in der E-Mail funktioniert es noch nicht, weil hier Simple Tokens verwendet werden. Gibt es was Ähnliches für die Simple Tokens, damit auch hier ein Zeilenumbruch generiert wird?

    Gruß
    Thomas

  6. #6
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    wenn Deine E-Mail als Text kommt, sollten da die Umbrüche vorhanden sein - nur bei HTML nicht, weil dem ein "\n" egal ist...

    ggf. könnte man dort ein "Konvertierungs-Inserttag" einbauen {{ln2br::##form_mylogtextfield##}}

    ich glaube bei simple tokens gibt es keine Flags wie bei Inserttag mit "|" https://docs.contao.org/manual/de/ar...sert-tag-flags

  7. #7
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Hat leider nicht funktioniert, durch diese Änderung wird der Inhalt von {{##form_message##}} überhaupt nicht mehr ausgegeben.
    Aber trotzdem danke für die Info.

  8. #8
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    ist die Frage, was eher ausgewertet wird - Simple Tokens oder Inserttag... die Simple Tokens müssen natürlich vorher kommen

  9. #9
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Für alle die das gleiche Problem haben wie ich, hier ist die passende Lösung die auch funktioniert:
    Eintrag ##form_message## durch {{flag::##form_message##|nl2br}} ersetzen.

    Gruß
    Thomas

  10. #10
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Den InsertTag flag gibt es aber nicht. Deine Lösung funktioniert nur weil der Fallback bei den InsertTags direkt den Aufrufparameter zurückgibt und dann wird nl2br ausgeführt.
    Sicherlich hast Du aber dadurch Meldungen über "Unknown insert tag" im Log stehen.

  11. #11
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Thomasge Beitrag anzeigen
    Für alle die das gleiche Problem haben wie ich, hier ist die passende Lösung die auch funktioniert:
    Eintrag ##form_message## durch {{flag::##form_message##|nl2br}} ersetzen.

    Gruß
    Thomas
    demnach geht es anscheinend doch - aber Du musst einen eigenen Inserttag erstellen...

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
  •