[TYPO3-german] GELÖST: Re: sysext form validierung

Reinhardt Medien Info at ReinhardtMedien.de
Sat Mar 18 13:05:31 CET 2017


Hallo Leute,

ich habe das Problem gelöst, nachdem ich Wolfgang Wagners Tutorial https://www.youtube.com/embed/cIEaY83Ppmc nochmal angeguckt habe, habe ich etwas entdeckt, was ich vergessen habe:

Das Typoscript sieht nun so aus:

enctype = multipart/form-data
method = post
prefix = tx_form
confirmation = 1
postProcessor {
	1 = mail
	1 {
		recipientEmail = admin (at) ichdir.de
		senderEmailField = form_email
		senderNameField = form_name
		subject = Formular von StadtRock.Berlin
		messages {
			success = TEXT
			success {
				value (
																				<div class="col-md-12" id="rm_form">
																					<h2>Danke für Ihre Nachricht</h2>
																					<p>Wir werden sobald wie möglich mit Ihnen in Kontakt treten.</p>
																				</div>
				)
			}
		}
	}
}
10 = TEXTLINE
10 {
	type = text
	class = form_name
	name = form_name
	placeholder = Name
	required = required
	filters {
		1 = alphanumeric
		1 {
			allowWhiteSpace = 1
		}
	}
}
20 = TEXTLINE
20 {
	type = email
	class = form_email
	name = form_email
	placeholder = E-Mail
	required = required
}
30 = TEXTAREA
30 {
	cols = 40
	rows = 5
	class = form_message
	name = form_message
	placeholder = Nachricht
	required = required
}
40 = SELECT
40 {
	class = form_auswahlliste
	name = form_auswahlliste
	label {
		value = Ihr Anliegen:
	}
	10 = OPTION
	10 {
		text = Allgemeines
		selected = selected
		value = Wert 1
	}
	20 = OPTION
	20 {
		text = Auftritt-Anfrage
		value = Wert 2
	}
}
50 = SUBMIT
50 {
	type = submit
	name = 10
	value = Formular absenden
}
60 = RESET
60 {
	type = reset
	class = form_reset
	name = 11
	value = Formular leeren
}
rules {
	1 = required
	1 {
		showMessage = 
		message = benötigt
		error = Ihr Name?
		element = form_name
	}
	2 = email
	2 {
		showMessage = 
		message = benötigt
		error = Eine gültige E-Mail-Adresse?
		element = form_email
	}
	3 = required
	3 {
		showMessage = 
		message = Benötigt
		error = Ihre E-Mail-Adresse?
		element = form_email
	}
	4 = required
	4 {
		showMessage = 
		message = Benötigt
		error = Ihre Nachricht?
		element = form_message
	}
}

Und im Template hatte ich die Nachrichten auskommentiert, dass ist natürlich auch für eine ordentliche Fehlerausgabe hinderlich:

Am Beispiel des Textfields habe ich also:

<f:if condition="{model.mandatoryValidationMessages}">
	<em><f:for each="{model.mandatoryValidationMessages}" as="mandatoryValidationMessage" iteration="iterator">{mandatoryValidationMessage}<f:if condition="{iterator.isLast}"><f:else> - </f:else></f:if></f:for></em>
</f:if>
<f:if condition="{model.validationErrorMessages}">
	<strong><f:for each="{model.validationErrorMessages}" as="errorValidationMessage" iteration="iterator">{errorValidationMessage}<f:if condition="{iterator.isLast}"><f:else> - </f:else></f:if></f:for></strong>
</f:if>

an mein Template angepasst positioniert.

Ich hoffe ich konnte hiermit auch anderen Typo3-Anfängern helfen.

Beste Grüße
Monti
-- 
Beste Grüße
Monti

Reinhardt Medien

www.ReinhardtMedien.de
Info (at) ReinhardtMedien.de


More information about the TYPO3-german mailing list