Zum Inhalt springen

Formhandler und GET/POST Variablen auslesen

Erstellt am 22. Februar 2012 · 1 Antwort · letzte Antwort am 22. Februar 2012

Tags: Frage

plxkillme ·

Hallo!

Ich habe ein Formular, in welchem der Wert aus einer GET-Variable in ein Inputfeld geschrieben werden soll.

Beispiel (zwei Inputfelder zum Testen von 2 Methoden):

<!-- ###TEMPLATE_FORM1### begin -->
<form action="###REL_URL###" id="projektform" method="post" class="formhandler">
<table>
<tr>
<th>Senden an:</th>
<td><input type="text" name="" id="mail_to" value="###value_email###" /></td>
</tr>
<tr>
<th>Senden an:</th>
<td><input type="text" name="" id="mail_to" value="###email###" /></td>
</tr>
<tr>
<th></th>
<td><input type="submit" value="Submit" ###submit_nextStep### /></td>
</tr>
</table>
</form>
<!-- ###TEMPLATE_FORM1### end -->

Und dies ist das TS:

plugin.Tx_Formhandler.settings {

	debug = 1
	preProcessors {
		1.class = Tx_Formhandler_PreProcessor_LoadGetPost
		2.class = Tx_Formhandler_PreProcessor_LoadDefaultValues
		2.config {
			1 {
				email.defaultValue.data = GPvar:email
			}
		}
	}
    
	templateFile = fileadmin/template/ext/formhandler/anmeldung.html  
	formValuesPrefix = formhandler    
	finishers {     
		1 {       
			class = Tx_Formhandler_Finisher_Mail     
		}     
		2 {       
			class = Tx_Formhandler_Finisher_SubmittedOK       
			config.returns = 1     
		}   
	}
	markers.email = TEXT
	markers.email.data = GPvar:email
	
}

Das erste Feld wird mit "Array" gefüllt.
Das zweite Feld bleibt leer (wenn ich statt "data = GPvar:email" ein "value = test" schreibe wird "test" eingefügt.)

Also irgendwie scheiter es an dem Auslesen der GPvar.
Der Formhandler-Debugger sagt folgendes:

Aktueller Step: 1
Höchster Subparts im Template (Anzahl der Steps): 1
Verwende Prefix für Formularwerte: "formhandler"
Verwende View "Tx_Formhandler_View_Form"
Die aktuellen GET/POST-Parameter:
Leere Parameter in der Session
Die aktuellen Werte in der Session:
Verwende Subpart "###TEMPLATE_FORM1###"!
Rufe Klasse "Tx_Formhandler_PreProcessor_LoadGetPost" auf!
Rufe Klasse "Tx_Formhandler_PreProcessor_LoadDefaultValues" auf!
Rufe Klasse "Tx_Formhandler_Interceptor_Filtreatment" auf!

Also keine aktuellen GET/POST-Parameter?

Ich habe alles mögliche probiert und bin mir sicher alles so gemacht zu haben, wie es andere in anderen Forenbeiträgen ebenfalls beschrieben haben... aber die Werte werden nicht übernommen.

Ich hoffe jemand kann mir einen Tipp geben!

plxkillme ·

Die Lösung war wie zu erwarten simple:

preProcessors {
		1.class = Tx_Formhandler_PreProcessor_LoadGetPost
		2.class = Tx_Formhandler_PreProcessor_LoadDefaultValues
		2.config {
			1 {
				email.defaultValue = TEXT
				email.defaultValue.data = GP:timeslot
			}
		}
	}

Also diese Zeilen:

email.defaultValue = TEXT
email.defaultValue.data = GP:timeslot