TYPO3-Testaccount
Testen Sie die aktuelle TYPO3 Version 4.4.2 kostenlos und unverbindlich für einen Monat!

jetzt testen

Schulungen

jetzt buchen

[Geschlossen] Formularfelder vorbelegen


Autor Nachricht
Verfasst am: 21. 10. 2005 [10:49]
lisardo
Themenersteller
Dabei seit: 20.10.2005
Beiträge: 103
Da diese Frage immer wieder auftaucht, und ich sie selbst erst gestern hatte, möchte ich sie hier einmal zusammenfassend beantworten. (Vielen Dank auch nochmals an Joey, der mir den richtigen Tipp gegeben hat).

1. Formularfelder mit Werten aus einer Datentabelle vorbelegen:
Zunächst im Content-Element mailform eintragen:
TYPOSCRIPT
Feldname: | *feldname = input,40 | {DB:tt_datentabelle:uid:datenfeld}

Dabei muss tt_datentabelle durch den Namen der gewünschten Tabelle ersetzt werden (es gehen nur Tabellen mit tt_ vorneweg). uid ist die Datensatznummer und datenfeld ist der Name des gewünschten Feldes der Datentabelle.
Das reicht allerdings noch nicht. Es muss im Template noch folgendes konfiguriert werden:
TYPOSCRIPT
tt_content.mailform.20.data.insertData = 1


2. Formularfelder mit Übergabewerten aus der URL vorbelegen:
Zunächst im Content-Element mailform eintragen:
TYPOSCRIPT
Feldname: | *feldname = input,40 | {GPvar:var}

Dabei ist var der Variablenname des Übergabewertes. In der URL also z. B.
TYPOSCRIPT
www.domain.de/32.0.html?var=BlaBla

Wieder muss im Template folgendes konfiguriert werden:
TYPOSCRIPT
tt_content.mailform.20.data.insertData = 1


3. Formularfelder mit Daten aus einer Datentabelle vorbelegen, wobei der Datensatz über einen Übergabewert aus der URL ausgewählt wird:
Dazu muss zunächst im Template per TypoScript eine Globale mit dem entsprechenden Wert gefüllt werden. Auf diese Globale kann dann im Content-Element zugegriffen werden.

Registrierung des gewünschten Wertes in einer Globalen; ich entnehme einen Wert aus dem Feld title der Tabelle tt_news. Die Übergabevariable heisst wieder var:

TYPOSCRIPT
tt_content.mailform {
    15 = LOAD_REGISTER
    15 {
      meinWert.cObject = RECORDS
      meinWert.cObject {
          source.data = GPvar:var
          tables = tt_news
          conf.tt_news = TEXT
          conf.tt_news {
            field = title
          }
      }
    }
}


Jetzt kann ich mit register:meinWert auf den gespeicherten Wert zugreifen und ihn im formmail-Content-Element verwenden:

TYPOSCRIPT
# Example content:
Feldname: | *feldname = input,40 | {register:meinWert}


Auch hier gilt wieder, dass folgende Zeile im Template stehen muss:

TYPOSCRIPT
tt_content.mailform.20.data.insertData = 1


OK, das hilft hoffentlich allen weiter, die Formularfelder vorbelegen wollen. Damit sollte alles möglich sein, was man braucht ...

Viele Grüße
Peter
ProfilWWW
Verfasst am: 08. 01. 2006 [22:00]
Oleson
Dabei seit: 08.05.2005
Beiträge: 41
Danke erstmal, lisardo, für diese schöne Übersicht. icon_biggrin.gif

Hallo zusammen,
ist es eigentlich möglich, (also möglich ist es auf jeden Fall - ich meine ohne tiefgreifende Änderungen an den php Files) speziell in der News-Singleansicht (tt_news) die author_email "auzulesen" und im Formular als Empfänger-eMail "vorzubelegen" ?

Folgendes funktioniert zunächst nämlich nicht.


Formular: (als Plugin eingefügt in der "News-Singleansicht"icon_wink.gif

Feldname: | *feldname = input,40 | {register:meinWert}




Template -> Setup (eingefügt in der Seite "News-Singleansicht"icon_wink.gif

tt_content.mailform.20.data.insertData = 1
tt_content.mailform {
15 = LOAD_REGISTER
15 {
meinWert.cObject = RECORDS
meinWert.cObject {
source.data = GPvar:var
tables = tt_news
conf.tt_news = TEXT
conf.tt_news {
field = author_email
}
}
}
}



Tschüß und Gruß
Oleson

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 08.01.2006 um 22:01.]
Profil
Verfasst am: 13. 06. 2007 [16:31]
kinneremer
Dabei seit: 20.07.2004
Beiträge: 196
Hallo,
möchte über die URL Daten übergeben. Habe laut Anleitung das Template angepasst und die Variablen angelegt (z.B. {GPvar:firma}{GPvar:Mail}). Doch wenn ich die Daten an die URL anhänge, leitet der redirect automatisch auf die Startseite um und sonst passiert nichts. Gibt es da noch einen Trick?

Greetings kinneremer

[ TYPO3 Version 4.4.1 ]
ProfilWWWYIM
Verfasst am: 14. 12. 2007 [10:44]
jlang
Dabei seit: 20.10.2004
Beiträge: 30
Hallo!

Hab das cirka verstanden nur komm ich nicht weiter.
Ich möchte den Seitentitel in den Betreff einfügen, da das Formular auf mehreren Seiten als Verknüpfung eingefügt ist, und der Titel die Referenz wäre.

Wie kann ich das machen?

Vielen Dank für die Antwort

J.Lang

Gefunden:
TYPOSCRIPT
{page:title}


[Dieser Beitrag wurde 2mal bearbeitet, zuletzt am 14.12.2007 um 11:21.]
ProfilWWW
Verfasst am: 22. 01. 2008 [12:53]
Longnose
Dabei seit: 21.09.2006
Beiträge: 87
Gute Sache... wie kann man eine IP-Adresse des Absenders oder z.B. ein Datum einfügen im Formular, ohne gleich auf mailform_plus umsteigen zu müssen?

Ein Schritt zurück bedeutet auch ein Schritt vorwärts.
ProfilWWW
Verfasst am: 22. 01. 2008 [18:25]
ttim
Dabei seit: 02.01.2008
Beiträge: 268
auf powermail umsteigen icon_wink.gif
Ich kann es nur empfehlen!
Profil
Verfasst am: 13. 02. 2008 [20:15]
masteryoda
Dabei seit: 08.05.2007
Beiträge: 41
Hey,

wie kann man ein Feld, das bsp. per GPvar vorbelegt wird, auf readonly stellen?

gruß
ProfilWWW
Verfasst am: 09. 07. 2008 [10:15]
sventb
Dabei seit: 21.03.2006
Beiträge: 43
Gibt es denn auch eine Möglichkeit, Select-Boxen mit Werten aus der Datenbank zu befüllen?

Also so in der Art:
TYPOSCRIPT
Bitte wählen* | *bla=select | {DB:tt_news_cat:title}


So funktioniert es, aber das ist ja Blödsinn:
TYPOSCRIPT
Bitte wählen* | *bla=select | {DB:tt_news_cat:1:title}, {DB:tt_news_cat:2:title}

ProfilWWW
Verfasst am: 11. 01. 2009 [22:28]
einpraegsam.net
Moderator
Dabei seit: 17.01.2005
Beiträge: 8534
Immer noch gut und brauchbar - ich mache hier mal ein HOWTO draus...

ProfilWWW


Auf dieses Thema kann nur von Administratoren geantwortet werden.