[Frage] Formhandler validation gibt IMMER falsch-positiv Meldungen TYPO3-Version: -

  • ejoo ejoo
    R2-D2
    0 x
    95 Beiträge
    7 Hilfreiche Beiträge
    26. 06. 2015, 13:26

    Hallo,
    ich versuche mich gerade am formhandler, und das Symptom ist wiirklich seltsam. Ich befolge das Tutorial
    [url]http://www.netresearch.de/blog/typo3-formhandler/[/url]
    und schon bei der Validierung läuft nichts mehr, da IMMER Fehler gemeldet werden, es scheint so, als würden die Werte aus dem Formular nicht übergeben werden, Fehlermeldungen bleiben aber ansonsten aus.
    Das setup für das Formular:

    1. config.admPanel=1
    2.  
    3. plugin.Tx_Formhandler.settings {
    4. debug = 1
    5.  
    6. templateFile = fileadmin/templates/forms/fromscratch/html/step-1.html
    7. langFile = fileadmin/templates/forms/fromscratch/lang/lang.xml
    8. formValuesPrefix = osk
    9.  
    10. finishers {
    11. 1 {
    12. class = Tx_Formhandler_Finisher_Mail
    13. }
    14. 2 {
    15. class = Tx_Formhandler_Finisher_SubmittedOK
    16. config.returns = 1
    17. }
    18. }
    19. validators.1.class = Validator_Default
    20. validators.1.disabled = 0
    21. validators.1.config.fieldConf {
    22. message.errorCheck.1 = required
    23. message.errorCheck.2 = minLength
    24. message.errorCheck.2.value = 5
    25.  
    26. sender_name.errorCheck.1 = required
    27.  
    28. sender_email.errorCheck.1 = required
    29. sender_email.errorCheck.2 = email
    30. }
    31. addErrorAnchors = 1
    32. singleErrorTemplate {
    33. totalWrap = |
    34. singleWrap = <!!=:>|</span>
    35. }
    36. errorListTemplate {
    37. totalWrap = <!!=:>Es sind folgende Fehler aufgetreten: <ul>|</ul></div>
    38. singleWrap = <li>|</li>
    39. }
    40. }

    Die zugehörige template-Datei step-1.html:

    1. <!-- ###TEMPLATE_FORM1### begin -->
    2. <p>Wenn es ein Problem gibt, einfach schreiben:</p>
    3. <form action="###REL_URL###" id="projektform" method="post" class="formhandler">
    4. <dl>
    5. <dt><label for="message">Problembeschreibung</label></dt>
    6. <dd>
    7. <textarea name="formhandler[message]" id="message">###value_message###</textarea>
    8. </dd>
    9.  
    10. <dt><label for="sender_name">Ihr Name</label></dt>
    11. <dd>
    12. <input type="text" name="formhandler[sender_name]" id="sender_name"
    13. value="###value_sender_name###" />
    14. </dd>
    15.  
    16. <dt><label for="sender_email">Ihre E-Mailadresse</label></dt>
    17. <dd>
    18. <input type="text" name="formhandler[sender_email]" id="sender_email"
    19. value="###value_sender_email###" />
    20. </dd>
    21. </dl>
    22. ###ERROR###
    23. <input type="submit" value="Absenden" ###submit_nextStep### />
    24. </form>
    25. <!-- ###TEMPLATE_FORM1### end -->
    26.  
    27. <!-- ###TEMPLATE_SUBMITTEDOK### begin -->
    28. <p>Die Anfrage mit folgendem Text wurde gesendet:</p>
    29. <p>###value_message###</p>
    30. <!-- ###TEMPLATE_SUBMITTEDOK### end -->
    31.  
    32. <!-- ###TEMPLATE_EMAIL_ADMIN_PLAIN### begin -->
    33. Das Kontakformular wurde an Sie geschickt:
    34. Absender: ###value_sender_name### ###value_sender_email###
    35. Text:
    36. ###value_message###
    37. <!-- ###TEMPLATE_EMAIL_ADMIN_PLAIN### end -->

    Typo3 ist Version 6.2.12, formhandler ist 2.0.1.

    Hüüülfe! ;)
    Dirk


  • 1
  • ejoo ejoo
    R2-D2
    0 x
    95 Beiträge
    7 Hilfreiche Beiträge
    26. 06. 2015, 21:19

    Ok, ich habs raus: formValuesPrefix muss formhandler sein. Ich verstehe noch nicht, in welchem Fall er anders lauten darf, aber das wars bei mir, die Werte kamen wie vermutet gar nicht an.

  • ejoo ejoo
    R2-D2
    0 x
    95 Beiträge
    7 Hilfreiche Beiträge
    26. 06. 2015, 22:12

    Nochmal für die Nachwelt ;)
    man kann den Wert für formValuesPrefix schon setzen, dann müssen in den Inputs etc. im Formular die name-Einträge im Format

    1. name="wert_des_prefix[name_des_feldes]"

    definiert werden, sonst klappt es nicht. Also das sinnigste ist dann, die Werte so im Mastertemplate (wer damit hantiert) zu definieren:
    1. name="###formValuesPrefix###[###fieldname###]"

  • jenses jenses
    Flash Gordon
    0 x
    3087 Beiträge
    106 Hilfreiche Beiträge
    27. 06. 2015, 08:03

    Zitiert von: ejoo
    Also das sinnigste ist dann, die Werte so im Mastertemplate (wer damit hantiert) zu definieren:
    1. name="###formValuesPrefix###[###fieldname###]"


    Das Sinnigste ist es,
    sich nicht auf eventuell veraltete Blogeinträge zu verlassen,
    sondern Manual oder Onlinedokumentation des Extensionprogrammierers zu befolgen.
    Auf typo3-formhandler.com gibt es u.a. einen Haufen Beispieltemplates -
    alle davon enthalten standardmäßig ###formValuesPrefix###[###fieldname###].

    Das hier geschilderte "Problem" wäre bei Nutzung eines dieser Templates nicht-existent gewesen ;)

  • 1