Zum Inhalt springen

2 formularfelder zusammenfassen

Erstellt am 6. Februar 2008 · 13 Antworten · letzte Antwort am 7. Februar 2008

Tags: Datenbank, Frage

just2b ·

😉

space weiß ich leider nicht, aber ich hätt 2 möglichkeiten für dich:
- ein 3. feld, das dass trennzeichen beinhaltet, als hidden input field
- per js vorm submit das trennzeichen ergänzen

georg

Juergen_190 ·

Die Lösung bleib ich dann natürlich nicht schuldig:

Im Formular:

<input type="hidden" name="trenner" value=" ">

Im Template:

# [inputFieldName]:[DBName]
mapping=name:last_name,vorname:first_name,vorname:name,trenner:name,name:name,text:biography,email:email,photo:photo_main

Gruss

Unbekannter Benutzer ·

Am Einfachsten ist es wohl mit einem Preprocessing zu arbeiten:

saveDB.fields.[fieldname].preProcessing

Diese Option kann ein TS-Objekt sein (USER,TEXT,...). Somit kannst du z.B. für das Feld "vorname" ein Preprocessing in einem TEXT-Objekt einbauen. In dem Objekt fügst du die GPVars "vorname" und "nachname" zusammen.
Optional gehts auch mit einer userFunc.

lg, reinhard

Unbekannter Benutzer ·

Zum Beispiel:

plugin.tx_thmailformplus_pi1.saveDB.vorname.preprocessing = USER
plugin.tx_thmailformplus_pi1.saveDB.vorname.preprocessing.userFunc = user_myclass->user_myfunc
class user_myclass {
  function user_myfunc(...) {
    $vorname = t3lib_div::_GP('vorname');
    $nachname = t3lib_div::_GP('nachname');
    return $vorname." ".$nachname;
  }
}

Bevor der Wert vom Formularfeld Vorname in die DB gespeichert wird, wird das preProcessing ausgeführt, also in diesem Fall die userFunc aufgerufen. Der Returnwert der userFunc wird als der neue Wert von Vorname genommen und in die DB gespeichert.

Wenn du keine userFunc verwenden willst, kannst du auch z.B. ein Textobjekt verwenden und darin mit TS die beiden Werte verknüpfen.

lg, reinhard

Juergen_190 ·

Hi Reinhard,

Die Version mit TS ohne php interessiert mich.
Da ich mich mit php lange nicht beschäftigt habe, und auch den quelltext wegen evtl. Updates nicht ändern möchte.

Gruß, Juergen

Unbekannter Benutzer ·

Eine Lösung wie diese könnte für deine Wünsche angemessen sein:

plugin.tx_thmailformplus_pi1.saveDB.vorname.preProcessing = TEXT
plugin.tx_thmailformplus_pi1.saveDB.vorname.preProcessing.value = {GPvar:vorname}&nbsp;{GPvar:nachname}

lg, reinhard