Ergebnis 1 bis 11 von 11

Thema: Select Feld Decodieren UTF-8

  1. #1
    Contao-Nutzer
    Registriert seit
    08.02.2014.
    Ort
    Neumünster
    Beiträge
    50

    Standard Select Feld Decodieren UTF-8

    Mahlzeit,

    wie überzeuge ich mein Select-Field, dass es die 'Gäste' speichert? Mein Versuch mit "decodeEntities'=>'true'" klappt nicht. Nach Auswahl der "Gäste" meckert das Formular "Ungültige Auswahl"

    Code:
           'category' => array
            (
                'label'                   => &$GLOBALS['TL_LANG']['tl_course_info']['category'],
                'exclude'                 => true,
                'search'                  => true,
                'sorting'                 => true,
                'filter'                  => true,            
                'flag'                    => 1,
                'inputType'               => 'select',
                'options'                 => array('Gäste','blabla','und so weiter'),
                'eval'                    => array('mandatory'=>true, 'maxlength'=>255,'decodeEntities'=>'true'),
                'sql'                     => "varchar(255) NOT NULL default ''"
            ),
    Gruß Bernd

  2. #2
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Moin,

    am besten du verwendest für die Optionen einen technischen Wert (ohne umlaute o.ä.) und vergibst dann mittel "reference" die übersetzten Texte aus einer Sprachdatei (UTF-8 ohne BOM kodiert) heraus.

    z.B. so:

    - https://github.com/contao/core/blob/...ember.php#L176
    - https://github.com/contao/core/blob/...ault.xlf#L1582

    Gruß, Cliff

  3. #3
    Contao-Nutzer
    Registriert seit
    08.02.2014.
    Ort
    Neumünster
    Beiträge
    50

    Standard

    Hallo Cliff,

    danke für die Rückmeldung. Würde das nicht bedeuten, dass auch in der Datenbank der technische Name gespeichert wird?
    Könnte man nicht über save_callback den Feldwert vor dem Speichern überschreiben?

    Gruß Bernd

  4. #4
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ja, dann wäre auch der technische Namen in der DB.

    Warum auch nicht? Das wäre dann sauber so.

    Beim Auslesen wird wieder ein Mapping auf die Textschlüssel durchgeführt.

  5. #5
    Contao-Nutzer
    Registriert seit
    08.02.2014.
    Ort
    Neumünster
    Beiträge
    50

    Standard

    Hmm, ich persönlich finde es schöner, wenn in der Datenbank auch das drin steht was rein soll. Aber gut, Mappe ich das Ganze.

    ...wie übersetze ich denn "Greenschnobels" oder "Aukröger Senioren" ins englische...

  6. #6
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Besser ist es, wen man einen festen Wert benutzt, der technischen Charakter hat. Muss ja nicht englisch sein, Sowas wie "gaeste" geht im Grunde auch.

    Dann läuft man auch nicht Gefahr, Probleme mit der Kodierung in der DB zu haben.

    Und spätestens wenn du eine Umbenennung des Labels hast oder mehrsprachig wirst, bist du froh, dass du nur an den gemappten Werten in den Sprachdateien was änderst, der Wert in der der DB aber gleich bleibt ... vor allem für bestehende Datensätze.

  7. #7
    Contao-Nutzer
    Registriert seit
    08.02.2014.
    Ort
    Neumünster
    Beiträge
    50

    Standard

    Siehe ich ja alles ein... aber was macht man denn nun, wenn ich dem Select-Feld nun eine SQL-Abfrage als Auswahl hinterlege möchte, wo lauter freundliche Datensätze mit Umlauten drin sind?

  8. #8
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mit dem "options_callback" arbeiten, darin dann z.B. die ID des Datensatzen aus dem SQL Select als value verwenden und als Option Label den Text mit den Umlauten.

  9. #9
    Contao-Nutzer
    Registriert seit
    08.02.2014.
    Ort
    Neumünster
    Beiträge
    50

    Standard

    Das hört sich gut an, jetzt noch ein Link mit einem Beispiel und ihr seit mich los. Die erste (und wahrscheinlich letzte) Erweiterung neigt sich dann dem Ende zu.

  10. #10
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

  11. #11
    Contao-Nutzer
    Registriert seit
    08.02.2014.
    Ort
    Neumünster
    Beiträge
    50

    Daumen hoch

    OK,

    das schaue ich mir heute Abend mal genauer an. Erst einmal ist der Glühwein dran.

    Danke Bernd

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
  •