Hallo TheBodi,
dann doch hier einmal eine Kurzübersicht zu meiner Extension.
Es handelt sich um varfeform. Sie erzeugt ein variables Formular, dass aus zwanzig Feldern besteht für den Frontend. Diese können bisher nur per Template File mit Namen versehen werden.
Das bedeutet, in der Datenbank werden die Felder nur als Field 1 - Field 20 gespeichert.
Die eingegebenen Formulardaten werden in einem vom Administrator definierten Sys-Folder gespeichert.
Da ich jetzt gerne aber auch im BE die Felder des jeweiligen Formulars mit Namen versehen haben möchte, habe ich überlegt eine zweite Datenbank zu eröffnen, in der Feldnamen gespeichert werden können.
Sprich dort werden dann wieder Field 1 - 20 gespeichert, allerdings kommen die Inhalte dafür vom Admin im BE und dort stehen die Namen der Felder, keine Inhalte der Felder.
Mein nächstes Problem war jetzt, wie verbinde ich diese Tabelle mit den Einträgen aus dem FE. Erste Überlegung, einfach die ID des jeweiligen Eintrags, mit den zugehörigen Feldern speichern, macht aber keinen Sinn, denn wenn ich einen Eintrag für den Inhalt des Formulares aus irgendeinem Grund mal nicht über das FE Formular sondern direkt im BE mache, würde dort keine Verbindung bestehen.
Mein Lösungsansatz schaut jetzt folgendermaßen aus:
- 1. Tabelle mit den Inhalten der varfeform Felder 1-20 und der id des Sys-Ordners
- 2. Tabelle mit den Namen der Formularfelder eines Sys-Ordners. Sprich dort sind Tabellenspalten für die Felder 1-20, sowie eine Verknüpfungsid zu dem jeweiligen Sys-Ordner.
- 3. Änderung der tca.php oder locallang_db.xml meiner Extension damit sie überprüft ob ein Eintrag in der Formularnamen Tabelle für den aktuellen Sys-Ordner vorliegt, wenn ja, dann sollen die Namen aus der DB verwendet werden zum labeln der Felder. Wenn nicht sollen standart Namen dort stehen (Feld 1 - Feld 20).
Das wäre meine Idee.
Ob das jetzt eine Gute ist, dürft ihr entscheiden. ;-)
Wenn ich diese Lösung so benutzen kann, würde ich denoch gerne wissen, wo ich die DB Abfrage aus Punkt 3 einbauen soll. In die tca.php meiner Extension?
Und welche Art von DB Abfrage kann ich dort aufrufen? Mittels der Typo3 Syntax, greift diese dort?
Lg
Micha