---
title: "Kontaktformular mit Typoscript einbinden/erstellen"
url: "https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen"
source: "typo3.net"
tags: ["Extensions","Frage"]
created: "2010-07-11"
last_reply: "2013-10-17"
replies: 4
solved: false
page: 1
pages: 1
lang: "de"
---

# Kontaktformular mit Typoscript einbinden/erstellen

Extensions · 4 Antworten · gestartet 2010-07-11

## Eröffnungsbeitrag

**Mike2707** · 2010-07-11 · [Beitrag #1](https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen/1)

Hallo,
ich möchte die mailform mit TypoScript in mein Template einbinden.

Zugewiesen habe ich es mit
page.10.subparts.CONTACT < tt_content.mailform

Wenn ich tt_content.mailform einbinde, erstellt mir Typo3 nur als HTML-Code "<fieldset class="csc-mailform"> | </fieldset>" (das was aus tt_content.mailform.20.stdWrap.wrap kommt).

Es gibt noch die Felder wie z.B, tt_content.mailform.20.layout und tt_content.mailform.20.LABEL.layout.

Dort sind einige Platzhalter vorhanden.
Mir ist aber nicht ganz klar, wie ich damit umzugehen habe.

Aber wie erstelle ich ein normales Mailformular mir Typoscript?

Ich möchte die Seite <http://www.oswd.org/files/designs/3691/delicious_fruit/> mit Typo3 nachbauen.
Das Loginformular und den Contentbereich habe ich schon.

Vielen Dank für eure Hilfe.

Gruß
Mike

## Antworten

### [#2](https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen/2) · einpraegsam.​net · 2010-07-11

Einfacher in dem Zusammenhang: Füge auf einer neuen Seite (z.B. Sysfolder) ein Mailform ein und konfiguriere dieses nach deinen Wünschen. Dann per TypoScript den Inhalt der neuen Seite (anhand der PID) an einem Marker oder Subpart ausgeben.

```typoscript
temp.INHALT = CONTENT
temp.INHALT {
	table = tt_content
	select {
		pidInList = 123
		orderBy = sorting
		where = colPos= 0
	}
}
```

Vorteil: Du kannst das Formular im Plugin definieren, was auch ein Redakteur ändern könnte. Weniger kryptisch als im TypoScript

### [#3](https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen/3) · Mike2707 · 2010-07-11

Hallo,
danke dir. Ich habe es umgesetzt und es funktioniert.
Muss nur noch schauen, wie ich das stylen kann.
Vielen Dank :)

Noch kurz ne Frage:
In der Zeit habe weiter gesucht und und mir einen Code zusammengebastelt.
Funktioniert, nur der Mailversand nicht.
Hast du eine Iddee?

page.10.subparts.CONTACT < tt_content.mailform
page.10.subparts.CONTACT {

20 = FORM
  20 {
    dataArray {
      10.label = Name:
      10.type = name=input
      10.value =
      10.required = 1
      20.label = eMail:
      20.type = email=input
      20.value =
      20.required = 1
      30.label = Bemerkung:
      30.type = bemerkung=textarea
      30.value =
      30.required = 1
      40.label = Subject
      40.type = subject=hidden
      40.value = Mein Formular
      #50.label = Referenz
      #50.type = myRef=hidden
      #50.value.data = GPVar : myRef
      60.type = formtype_mail=submit
      60.value = Senden
     }
    recipient >
    recipient = xx@xx.xx
    recipient.field = subheader

hiddenFields.formtype_mail = TEXT
    hiddenFields.formtype_mail.value = 1

}

}

### [#4](https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen/4) · Gernott · 2010-07-15

Hallo,

hab das selbe Problem wie Du :-)
[/d/100047-cobject-form](https://www.typo3.net/d/100047-cobject-form)
locationData ist schuld. Ich weiß aber noch nicht wie ichs lösen kann :-(

### [#5](https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen/5) · Unbekannter Benutzer · 2013-10-17

Das Problem mit locationData ist kein "Problem", sondern eine Sicherheitseinrichtung von typo3, um zu verhindern, dass Robots Massenmails verschicken, soll heissen: locationData ist dazu da, sicherzustellen, dass die verschickte Mail von einem Formular verschickt wird, das es tatsächlich GIBT (zugegeben, ein schlampiger Schutz - andere Extensions verwenden Captcha und sind damit sicherer. Egal.)

Auf <https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ContentObjects/Index.html> stehts übrigens gut beschrieben.

In Kürze: locationData ist ein verstecktes Feld, das bei mir zB so aussieht:

```html
<input type="hidden" name="locationData" value="527:tt_content:984" />
```

Die Syntax ist: "pid:table:uid", und typo3 validiert nun: gibts auf der Seite "pid" ein Element aus der Tabelle "table" mit der uid "uid" und ist die auch aktiv und zu sehen (= nicht unsichtbar, nicht un-ausgegeben weil user nicht eingeloggt, nicht gelöscht)? Wenn ja, wird eine Mail verschickt. Wenn nein --> kommt alles in den Gully.

Trick, um das zu umgehen:
1) leg Dir das Mailformular auf irgendeine Seite, die stellst Du "nicht im Menue" und verrätst niemandem, dass es die Seite gibt :-)
2) hart-codiere Dein Mailformular (mit typoscript, templates, php, wurschtwas) mit dem hidden field "locationData" und der richtigen Codierung (TYPO3 sieht nämlich nicht nach, ob der Output von diesem Formular IST, sondern nur obs das Formular GIBT).

Dann gehts!

Ich habs verwendet, um in CAL ein Anmeldeformular einzubinden, das in versteckte Felder gleich Daten aus CAL einträgt --> inject von Daten in ein Mailformular ist mir noch nicht anders gelungen.

:-)

---

Quelle: „Kontaktformular mit Typoscript einbinden/erstellen“, typo3.net, https://www.typo3.net/d/99935-kontaktformular-mit-typoscript-einbindenerstellen
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
