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

Jetzt testen!

Schulungen

jetzt buchen

Formularfeld in formhandler je nach Thema vorbelegen


Autor Nachricht
Verfasst am: 30. 01. 2012 [18:01]
Valen
Themenersteller
Dabei seit: 15.09.2006
Beiträge: 56
Hallo zusammen,

ich verwende auf meiner Seite formhandler für meine Kontaktformulare. Funktioniert ganz gut, bis auf ein relativ wichtiges Detail:

Es gibt verschiedene Themengebiete auf der Seite, über die man sich jeweils per Formular "Weiteres Informationsmaterial" anfordern kann.
Deshalb würde ich gern in ein verstecktes Formularfeld (oder meinetwegen auch in den Betreff) jeweils dieses Themengebiet übergeben lassen.

Mein Ansatz war: einfach nur den Titel der zuletzt besuchten Seite mit ins Formular übergeben.

Mit folgendem Code schaff ich das auch:

TYPOSCRIPT
lib.form_filled_from = TEXT
lib.form_filled_from {
  data = getenv : HTTP_REFERER
}


Allerdings bekomme ich da wirklich nur die URL. Ich hätte da aber gerne den Seitentitel, damit es für die Sachbearbeiter schneller ersichtlich ist.
ich hab heute den halben Tag versucht, das Ganze irgendwie anders zu lösen, aber von Sessions hab einfach zu wenig Ahnung und verzweifle so langsam.

Ein anderer Ansatz wäre noch, das Ganze als Parameter mit der URL zu übergeben, aber da wüsste ich jetzt nicht, wie man das übers Backend bewerkstelligen kann, ohne im RTE in die Codeansicht zu wechseln und dort den Parameter manuell an den Link zu hängen.

Hab irgendwer ne Idee? Ih ckomm nicht weiter.

Profil
Verfasst am: 30. 01. 2012 [20:59]
LuP
Dabei seit: 12.04.2007
Beiträge: 278
Hallo,

warum nicht einfach ein neues Feld mit Dropwdown-List für die Auswahl der Themengebiete im Formular hinfügen? Es könnte ja sein, dass jemand zwar von einer Seite mit bestimmtem Themengebiet kommt aber letztendlich sich für anderes interessiert.

EDIT:
mein Ansatz würde aber dann nur gelten, wenn das Feld für die Besucher sichtbar sein kann.

VG,
LuP

[Dieser Beitrag wurde 2mal bearbeitet, zuletzt am 30.01.2012 um 21:03.]
Profil
Verfasst am: 31. 01. 2012 [11:09]
Valen
Themenersteller
Dabei seit: 15.09.2006
Beiträge: 56
Also ich hab das ganze jetzt doch völlig unerwartet über die Session gelöst.

Ich binde per
TYPOSCRIPT
[globalVar=TSFE:id!=9]
seite.1 = PHP_SCRIPT
seite.1{
  file = fileadmin/templates/.../ts_seitentitel.php
}
[global]


folgendes script ein:

PHP
<?php
$GLOBALS['TSFE']->fe_user->setKey('ses', 'pageTitle', $GLOBALS['TSFE']->page['title']);
$GLOBALS['TSFE']->fe_user->storeSessionData();
?>


Damit wird auf jeder Seite bis auf die ID=9 (mein Kontaktformular) der aktuelle Seitentitel in die Session geschrieben.

Wie schon erwähnt, benutze ich Formhandler. Dort gibt es eine eigene TS-Setup Datei. In dieser hole ich mir mit

TYPOSCRIPT
lib.form_filled_from = TEXT
lib.form_filled_from {
  data = TSFE:fe_user|sesData|pageTitle
  dataWrap = <input type="hidden" name="formhandler2[came_from]" value="|" />
}
 
plugin.Tx_Formhandler.settings.predef.fullform.markers.camefrom < lib.form_filled_from


den Seitentitel und spucke ihn mit einem hidden-field auf den Marker.

Problem gelöst.
Profil