[TYPO3-german] Formhandler - Eingabefelder nach Fehlerprüfung leer

JCL - Johannes C. Laxander jc at laxander.com
Thu Jan 10 18:36:05 CET 2013


Hallo Reinhard, 

danke, jetzt hab's auch ich begriffen - in meinem Alter dauert das halt manchmal etwas länger ;)

So hat's jetzt funktioniert:
name="###formValuesPrefix###[personen-erwachsene]" value="###value_personen-erwachsene###"

personen {
	personen-erwachsene.errorCheck {
		1 = required
		2 = betweenValue
		2.minValue = 1
		2.maxValue = 10
	}
	personen-kinder.errorCheck {
		1 = betweenValue
		1.minValue = 1
		1.maxValue = 5
	}
}

Dazu habe ich aber noch eine kleine Zusatzfrage:
Mit personen-kinder.errorCheck.1.betweenValue wird auch dann ein Fahler angezeigt, wenn keine Eingabe gemacht wird, was aber zulässig sein sollte, weil nicht required.
Wie kann ich das erreichen???

Gruß, Johannes.


> Reinhard Führicht
> Gesendet: Donnerstag, 10. Januar 2013 16:00
> 
> Hallo Johannes,
> 
> wenn ich das richtig im Kopf habe ist diese Schreibweise falsch:
> 
> ###formValuesPrefix###[personen[erwachsene]]
> 
> Richtig wäre:
> 
> ###formValuesPrefix###[personen][erwachsene]
> 
> Damit schaut das Array mit den übergebenen Werten in PHP so aus:
> 
> ###formValuesPrefix### => array(
>    personen => array(
>      erwachsene => asdf
>    )
> )
> 
> Mit dem Marker ###value_personen|erwachsene### kannst du den 
> Wert auslesen.
> 
> Der Wert für "erwachsene" ist also im POST Array nochmal in 
> einem Array "verschachtelt".
> 
> Die einfachere Variante wäre es z.B. so zu lösen:
> 
> ###formValuesPrefix###[personen-erwachsene]
> 
> und
> 
> ###value_personen-erwachsene###
> 
> Viele Grüße,
> Reinhard
> 
> Am 10.01.2013 15:33, schrieb JCL - Johannes C. Laxander:
> >
> > Hallo Reinhard,
> >
> > jetzt bin ich ein wenig verwirrt.
> >
> > Worauf beziehst du jetzt " **SO** "verschachtelst" ??
> >
> > Auch mit dieser Schreibweise "value_personen|feld1" bleibt 
> das Feld leer, genau so wie bei diesen:
> >
> > value_personen[feld1]
> > value_personen_feld1
> > value_personen-feld1
> >
> > Diese Schreibvarianten habe ich auch mit 
> ###formValuesPrefix###[personen[erwachsene]] und mit 
> personen[erwachsene] getestet. In allen Fällen wird das Feld 
> bei der Fehleranzeige leer angezeigt.
> >
> > Hast du noch eine Idee?
> >
> > Gruß, Johannes.
> >
> >> Reinhard Führicht
> >> Gesendet: Donnerstag, 10. Januar 2013 13:31
> >>
> >> Hallo Johannes,
> >>
> >> wenn du das Formularfeld so "verschachtelst", müsste es mit dem 
> >> Marker
> >> value_personen|feld1 funktionieren.
> >> Genauso wie du mit Typoscript auf ein Array zugreifen würdest.
> >>
> >> Ein formValuesPRefix ist nicht zwingend notwendig, ist 
> aber ratsam, 
> >> um Probleme mit anderen Formularen auf der gleichen Seite zu 
> >> vermeiden.
> >>
> >> Viele Grüße,
> >> Reinhard
> >>
> >> Am 09.01.2013 22:52, schrieb JCL - Johannes C. Laxander:
> >>>
> >>> Hallo Reinhard,
> >>>
> >>> habe heut auch noch Probleme meine E-Mails zu empfangen,
> >> deshalb die späte Reaktion.
> >>>
> >>> Danke für deinen Hinweis. Ich in meinem Setup dies:
> >>>
> >>> formValuesPrefix = bookingrequest
> >>>
> >>> Ich meine ich hätte das auch schon mit folgendem HTML probiert:
> >>>
> >>> <input type="text" name="bookingrequest[personen[feld1]]"
> >>> value="###value_feld1###" />
> >>>
> >>> weiß aber nicht ob das überhaupt richtig ist!??
> >>> Ist es besser ohne formValuesPrefix zu arbeit? Ist ja auch
> >> nur ein Formular auf der Seite.
> >>>
> >>> Gruß, Johannes.
> >>>
> >>>> -----Ursprüngliche Nachricht-----
> >>>> Von: typo3-german-bounces at lists.typo3.org
> >>>> [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag
> >> von Reinhard
> >>>> Führicht
> >>>> Gesendet: Mittwoch, 9. Januar 2013 16:37
> >>>> An: typo3-german at lists.typo3.org
> >>>> Betreff: [TYPO3-german] Re: Formhandler - Eingabefelder nach 
> >>>> Fehlerprüfung leer
> >>>>
> >>>> Hallo Johannes,
> >>>>
> >>>> ist "personen" dein formValuesPrefix?
> >>>>
> >>>> Also:
> >>>>
> >>>> plugin.Tx_Formhandler.settings {
> >>>>        formValuesPrefix = personen
> >>>> }
> >>>>
> >>>> Dann im HTML:
> >>>>
> >>>> <input type="text" name="personen[feld1]"
> >> value="###value_feld1###"
> >>>> />
> >>>>
> >>>> Das sollte problemlos funktionieren.
> >>>>
> >>>> Viele Grüße,
> >>>> Reinhard
> >>>>
> >>>> Am 09.01.2013 15:10, schrieb JCL - Johannes C. Laxander:
> >>>>>
> >>>>> Hallo Reinhard,
> >>>>>
> >>>>> danke für deine schnelle Antwort.
> >>>>>
> >>>>> Da hab' ich wohl vor lauter Bäumen den Wald nicht mehr
> >>>> gesehen ;-) So
> >>>>> ein blöder Fehler...
> >>>>>
> >>>>> Aber leider, leider hat das mein Problem nicht gelöst.
> >>>>> Für das Eingabefeld "Kinder" sieht meine Definition jetzt
> >>>> so aus (anlaog auch "Erwachsene"):
> >>>>>
> >>>>> <input class="sc-zahl" type="text" size="5" id="personen-kinder"
> >>>>> name="personen[kinder]" value="###value_personen-kinder###"
> >>> /> <label
> >>>>> class="sc-zahl"
> >>>>> for="personen-kinder">###LLL:personen.kinder###</label>
> >>>>> ###validate_personen-kinder###
> >>>>>
> >>>>> Ich hab's auch mit den Markern ###value_erwachsene### und
> >>>> ###value_kinder### versucht, aber auch das hat nicht 
> geholfen. Bin 
> >>>> ratlos!
> >>>>>
> >>>>> Johannes.
> >>>>>
> >>>>>
> >>>>>> -----Ursprüngliche Nachricht-----
> >>>>>> Von: typo3-german-bounces at lists.typo3.org
> >>>>>> [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag
> >>>> von Reinhard
> >>>>>> Führicht
> >>>>>> Gesendet: Mittwoch, 9. Januar 2013 14:40
> >>>>>> An: typo3-german at lists.typo3.org
> >>>>>> Betreff: [TYPO3-german] Re: Formhandler - Eingabefelder nach 
> >>>>>> Fehlerprüfung leer
> >>>>>>
> >>>>>> Hallo Johannes,
> >>>>>>
> >>>>>> Am 09.01.2013 14:33, schrieb JCL - Johannes C. Laxander:
> >>>>>>>
> >>>>>>> Hallo,
> >>>>>>>
> >>>>>>> ich veruche nun schon eine ganze Weile, für zwei
> >>>>>> Eingabefelder die Fehlerprüfung hinzubekommen.
> >>>>>>> Ich scheitere aber schon daran, dass nach Eingabe in eines
> >>>>>> der beiden Felder, oder auch in beide Felder, die 
> >>>>>> "Required-Error-Message" angezeigt wird und beide
> >>>> Eingabefelder leer
> >>>>>> sind. Der Wert wird also nicht zwischengespeichert, auch
> >> wenn die
> >>>>>> Eingabewerte korrekt sind.
> >>>>>> Es wird immer die "Required-Error-Message" angezeigt. Gebe
> >>>> ich einen
> >>>>>> ungültigen Wert ein, wird die "Between-Error-Message"
> >>>> angezeigt. Auch
> >>>>>> in diesem Fall sind beide Felder leer.
> >>>>>>>
> >>>>>>> So sieht das im Formular aus:
> >>>>>>>
> >>>>>>> -----
> >>>>>>> Personen:     |___| Erwachsene  |___| Kinder
> >>>>>>> -----
> >>>>>>>
> >>>>>>> Andere Eingabefelder funktionieren problemlos!
> >>>>>>>
> >>>>>>> Was ist falsch oder unvollständig an meiner Definition????
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>>>>>>>> Feld Definition im Master-Template
> >>>>>>>
> >>>>>>> <!-- ###master_personen### -->
> >>>>>>> ###error_personen###
> >>>>>>> <div class="ym-fbox-text ###is_error_personen###">
> >>>>>>> 	<span class="ym-label">###LLL:personen###</span>
> >>>>>>> 	<div class="ym-inline">
> >>>>>>> 		<input class="sc-zahl" type="text" size="5"
> >>>>>> id="personen-erwachsene" name="personen[erwachsene]" />
> >>>>>>> 		<label class="sc-zahl"
> >>>>>> for="personen-erwachsene">###LLL:personen.erwachsene###
> >>>>>> ###required_personen-erwachsene###</label>
> >>>>>>> 		###validate_personen-erwachsene###
> >>>>>>> 		<input class="sc-zahl" type="text" size="5"
> >>>>>> id="personen-kinder" name="personen[kinder]" />
> >>>>>>> 		<label class="sc-zahl"
> >>>>>> for="personen-kinder">###LLL:personen.kinder###</label>
> >>>>>>> 		###validate_personen-kinder###
> >>>>>>> 	</div>
> >>>>>>> </div>
> >>>>>>> <!-- ###master_personen### -->
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>>>>>>>> TypoScript für Error check (gekürzt)
> >>>>>>> ...
> >>>>>>> personen {
> >>>>>>> 	erwachsene.errorCheck {
> >>>>>>> 		1 = required
> >>>>>>> 		2 = betweenValue
> >>>>>>> 		2.minValue = 1
> >>>>>>> 		2.maxValue = 10
> >>>>>>> 	}
> >>>>>>> 	kinder.errorCheck {
> >>>>>>> 		1 = betweenValue
> >>>>>>> 		1.minValue = 1
> >>>>>>> 		1.maxValue = 10
> >>>>>>> 	}
> >>>>>>> }
> >>>>>>> ...
> >>>>>>>
> >>>>>>> Gruß, Johannes.
> >>>>>>>
> >>>>>>
> >>>>>> dir fehlt ein "value"-Marker im Template.
> >>>>>>
> >>>>>> z.B.:
> >>>>>>
> >>>>>> <input class="sc-zahl" type="text" size="5" 
> id="personen-kinder"
> >>>>>> name="personen[kinder]" value="###value_kinder###"/>
> >>>>>>
> >>>>>> Viele Grüße,
> >>>>>> Reinhard
> >>>>>>
> >>>>>> _______________________________________________
> >>>>>> TYPO3-german mailing list
> >>>>>> TYPO3-german at lists.typo3.org
> >>>>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> >>>>>>
> >>>>>
> >>>>
> >>>> _______________________________________________
> >>>> TYPO3-german mailing list
> >>>> TYPO3-german at lists.typo3.org
> >>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> >>>>
> >>>
> >>
> >>
> >> --
> >> http://www.typo3-formhandler.com
> >> _______________________________________________
> >> TYPO3-german mailing list
> >> TYPO3-german at lists.typo3.org
> >> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> >>
> >
> 
> 
> --
> http://www.typo3-formhandler.com
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> 



More information about the TYPO3-german mailing list