Zum Inhalt springen

MailformPlus Felder aus DB vorbelegen

Erstellt am 12. Februar 2008 · 3 Antworten · letzte Antwort am 13. Februar 2008

Tags: Datenbank, Frage

uhu ·

Hi,

ich möchte gerne Felder eines Formulars (th_mailformplus) mit Werten aus der Datenbank vorbelegen.

Einen einfachen Text kann ich ja mit
plugin.tx_thmailformplus_pi1.fieldConf.[FELDNAME].defaultValue.value = blabla
vorbelegen.

Nun möchte ich aber den Text aus der Tabelle tt_content holen.
Also sowas in der Art:
...fieldConf.[FELDNAME].defaultValue.value = das Ergebnis von "select header from tt_content where uid=1"

ich hab schon folgendes probiert:
temp.foo = CONTENT
temp.foo {
table = tt_content
select.where = uid=1
select.selectFields = header
}
plugin.tx_thmailformplus_pi1.fieldConf.[FELDNAME].defaultValue < temp.foo

Das geht aber nicht.

Folgendes funktioniert:
temp.blabla = TEXT
temp.blabla.value = ein Text

plugin.tx_thmailformplus_pi1.fieldConf.[FELDNAME].defaultValue < temp.blabla

Jemand einen Tip?
Bin für jeden Hinweis dankbar.

Gruss Peter

Unbekannter Benutzer ·

Ein Blick in die Doku verrät, dass der defaultValue nur ein String oder ein TEXT-Objekt sein darf.

Es gibt aber, wenn ich mich nicht täusche, doch beim TEXT-Objekt Möglichkeiten eine userFunc aufzurufen bzw. ein Content-Objekt zu laden (mit cObject?).

Ich denke ein Blick in die TSref hilft dir weiter.

lg,
Reinhard

uhu ·
mtd04014 schrieb

Ein Blick in die Doku verrät, dass der defaultValue nur ein String oder ein TEXT-Objekt sein darf.

Ja, das habe ich auch gesehen

mtd04014 schrieb

Es gibt aber, wenn ich mich nicht täusche, doch beim TEXT-Objekt Möglichkeiten eine userFunc aufzurufen bzw. ein Content-Objekt zu laden (mit cObject?).

Ich denke ein Blick in die TSref hilft dir weiter.

Nein, leider nicht. Ich komme damit nicht klar. Mein TS Kenntnisse sind da wohl noch nicht gut genug. Irgendwie muss ich doch eine DB-Abfrage in ein Text Objekt bekommen.

Aber vielen Dank trotzdem.
Gruss Peter.

Unbekannter Benutzer ·

wenn du willst kannst du auch die Extension modifizieren.

In der class.tx_thmailformplus_pi1.php (ca. Zeile 887):

statt:

$this->get_post[$fN] = $this->cObj->TEXT($this->conf['fieldConf.'][$fN.'.']['defaultValue.']);

benutzt du getSingle:

$this->get_post[$fN] = $this->cObj->cObjGetSingle($this->conf['fieldConf.'][$fN.'.']['defaultValue'],$this->conf['fieldConf.'][$fN.'.']['defaultValue.']);

Damit wird jetzt nicht nur TEXT, sondern jedes TS-Objekt gerendert.