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

Reinhard Führicht rf at typoheads.at
Thu Jan 10 16:00:20 CET 2013


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


More information about the TYPO3-german mailing list