Zum Inhalt springen

Formhandler Finisher_DifferentDB UpdateInsteadOfInsert funktioniert nicht

Erstellt am 11. September 2013 · Noch keine Antworten

Tags: Formhandler, TYPO3 6.x, Frage

DerAndi ·

Hallo zusammen,
ich hoffe Ihr verzeiht mir, wenn ich in meinem ersten Post hier etwas Wichtiges vergessen sollte zu erwähnen.

Also:
Ich habe mit dem Formhandler (Version 1.6.1) eine Art Registrierungsformular erstellt (Name, Geburtstag, Mail usw.), welches dann mit Hilfe des Finisher_DifferentDB alle Eingaben in eine externe Datenbank speichert.

Soweit funktioniert das auch alles, aber jetzt soll für den Fall einer bereits vorhanden email der Eintrag aktualisiert werden.
Genau da liegt das Problem, denn im Debug-Mode kommt die Meldung:

Tx_Formhandler_Finisher_DB

UID parameter not found in GP. Cannot make update!
Data gets stored!

Tx_Formhandler_Finisher_DifferentDB
Executing request "INSERT INTO fh_inputtest ...

Der zeigt zwar keinen Fehler, in der Datenbank ändert sich aber natürlich nichts, da ja bereits ein Eintrag unter der email vorhanden ist, und das email-Feld in der Datenbank Primärschlüssel ist und deshalb nicht nochmal mit gleicher email besetzt wird.

Hab schon versucht die Email mit verstecktem input-Feld, wo sie dann automatisch drinstand, ins Formular einzubauen, aber obwohl sie in den Get/Post-Parametern auftaucht (was sie übrigens normal auch tut), funktioniert auch das nicht.

Hier der (hoffentlich komplette) relevante Teil des Typoscripts:

2.class = Finisher_DifferentDB
2.config {
	host = ****
	port = ****
	db = testdb
	driver = mysql
	username = ****
	password = ****
	table = fh_inputtest
	updateInsteadOfInsert = 1
	key = email
	key_value = TEXT
	key_value.data = GP:formhandler|email
			
	fields {
		grade.mapping = position
		firstname.mapping = firstname
		lastname.mapping = lastname
		birthday.mapping = datepicker
		address.mapping = address
		city.mapping = city
		postcode.mapping = postcode
		country.mapping = country
		email.mapping = email
		phone.mapping = phone
		personal_info.mapping = message
		file.mapping = fullfilename
	}
}

Der Fehler tritt auf, egal ob key_value definiert wird, oder nicht.

Da bei mir mittlerweile restlos alle Links zu dem Thema bei Google lila sind, hab ich gedacht, frag ich mal hier 🙂