Zum Inhalt springen

Formhandler lädt keine XML-Datei

Erstellt am 2. Dezember 2009 · 11 Antworten · letzte Antwort am 10. Dezember 2009

Tags: Frage

intensivstation ·

Bisher habe ich immer Mailformplus benutzt. Nun wollte ich mal dessen Nachfolger nehmen, aber ich bin nun total verzweifelt, denn diese Extension lädt die Sprach-XML-Datei nicht.
###LLL:Vorname### bleibt leer und die Fehlermeldungen bleiben auch leer, obwohl ich das alles ins XML-File gepackt habe. In die Controller-Datei habe ich auch mal print_r($this->langFiles); eingegeben, aber auch da ist das Array leer.
Was ist also zu tun? Die Datei ist eindeutig vorhanden und korrekt.
Mein TS sieht so aus:

plugin.Tx_Formhandler.settings {
 langFile = fileadmin/template/files/formhandler.xml
 validators.1 {  
  class = Tx_Formhandler_Validator_Default
  config {
    fieldConf {
      Vorname.errorCheck {
        1 = required
        2 = minLength
        2.value = 2
      }
      Name.errorCheck {
        1 = required
        2 = minLength
        2.value = 2
      }
      Strasse.errorCheck {
        1 = required
        2 = minLength
        2.value = 2
      }
      Postleitzahl.errorCheck {
        1 = required
        2 = integer
      }
      Ort.errorCheck {
        1 = required
        2 = minLength
        2.value = 2
      }
      email.errorCheck {
        1 = required
        2 = email
      }
    }
  }
 }
 finishers {
  1.class = Tx_Formhandler_Finisher_Mail
  x.class = Tx_Formhandler_Finisher_Redirect
 }
}

Ich habe keine Ideen mehr...
Verwirrend finde ich auch das Beispiel in der Doku:
http://typo3.org/documentation/document-library/extension-manuals/formhandler/0.9.4/view/1/5/
Das sieht so aus:

<tr>
<td>###LLL:username###</td>
<td><input type="text" name="username" value="###value_username###" /></td>
</tr>

In den Templates sieht es aber so aus:

<input type="text" name="formhandler[lastname]" id="lastname" value="###value_lastname###" />

Da wird ein Array benutzt: formhandler[lastname]...

gmf ·

Versuch mal statt:

plugin.Tx_Formhandler.settings {
 langFile = fileadmin/template/files/formhandler.xml
}

Das hier:

plugin.Tx_Formhandler.settings {
 langFile.1 = fileadmin/template/files/formhandler.xml
intensivstation ·

Alles schon versucht. Mit Typo3 4.3.0 und 4.2.10. Unter Windows und Linux.
Alles ohne Erfolg. Die XML-Datei wird nicht geladen.
Und wenn ich print_r($this->settings); mache, taucht da auch keine XML-Datei auf.
Es klappt einfach nicht.
Ich schmeiß diese Bugy-Extension jetzt endlich runter und nehme wieder mailformplus.
Meine Geduld ist am Ende...

gmf ·

Das TS-Setting funktioniert mit Sicherheit. Ich habe Formhandler in einigen Projekten in Betrieb.

"Buggy" halte ich für übertrieben, außerdem ist die Extension eben auch noch Beta und nicht Stable.

Kannst du dein komplettes TS-Setup für Formhandler hier posten?

aschweti ·

"Buggy" halte ich wiederum noch für untertrieben.

Seit der 0.9.4 ist es deutlich schlimmer geworden. XML-Datei lädt er nur noch, wenn man mit "predef" arbeitet und dann das Formular über die Dropdownliste im Flexform auswählt.

Was überhaupt nicht mehr zu funktionieren scheint ist der Redirect. Weder im Flexform noch im TS. Wir haben testweise mal die Reihenfolge der Finisher geändert, also erst "Tx_Formhandler_Finisher_Redirect" und dann "Tx_Formhandler_Finisher_Mail". Plötzlich funktioniert es, aber "Tx_Formhandler_Finisher_Mail" wird natürlich nicht mehr ausgeführt.

Tja, einem geschenkten Gaul schaut man ja bekanntlich nicht ins Maul, haben wir hoffen derzeit sehr, dass zumindest die zahlreichen Bugs die in der 0.9.4 neu eingeführt wurden in einer 0.9.5 wieder behoben werden...

Wie gesagt mit "predef" sollte zumindest Dein XML-Problem "behoben" sein.

Viele Grüße und viel Erfolg,

Alex

gmf ·

Ein Bug kann nur dann behoben werden, wenn er den Entwicklern bekannt ist und soweit ich weiß haben wir weder per Mail noch im Bugtracker auf Forge davon gehört.

Nachdem wir selbst nur mit predef arbeiten ist der Fehler bisher nicht aufgefallen. Ich werde mir die Fehler ansehen und sie schnellstmöglich beheben.

aschweti ·

Hallo gmf,

Du hast natürlich Recht und meine Mail war daher so gesehen ziemlich unfair.

Da ich aktuell ein wenig parallel mit dem Design eines komplexen Formulars und der Technik (also Formhandler) beschäftigt bin, habe ich zwar schon ordentlich geflucht, aber auch noch nicht bis ins Detail analysiert, was genau das Problem sein könnte.

Hinzu kam, dass wir das Problem ja mittels Workaround erstmal "gelöst" haben.

Neben dem Problem mit der Redirect und der XML-Datei gibt es aber sowieso noch ein paar Ungereimtheiten mit der Kombination von Flexform und TS Konfigurationen.

Wenn man z.B. Template und Sprachdatei in der Default TS angibt und dann mal testweise keine Dateien im Flexform angibt, bekommt man einen "No Template Found"-Fehler. Sollte ja vermutlich auch nicht sein.

Wenn Interesse besteht, kann ich gerne die Probleme genauer definieren (wenn ich mit dem Design fertig bin) und hier posten. Bist Du einer der Entwickler?

Übrigens trotz aller Bugs (was einer Beta ja auch irgendwie zusteht) leistet die Extension ja auch bereits eine ganze Menge. Wenn dem nicht so wäre, hätten wir die Erweiterung sicherlich schon lange in den Müll gestopft. Da gehört sie aber definitiv nicht hin 😃

Danke und viele Grüße,

Alex

gmf ·

Es wäre toll, wenn du alle Probleme, die es mit der Extension gibt meldest.

Bugs, Probleme und Feature Requests sollten im Bugtracker auf Forge eingetragen werden, der als zentrale Anlaufstelle dienen sollte.

http://forge.typo3.org/projects/extension-formhandler/issues

Somit brauche ich nicht an mehreren Orten nach Problemen mit der Extension suchen und es wird verhindert, dass ein und dasselbe Problem doppelt und dreifach gemeldet wird.

aschweti ·

Werde mich ASAP darum kümmern. Das das Problem mit dem Redirect bei Euch nicht aufzutreten scheint irritiert mich allerdings. Wir sind ja bereits auf "predef" ausgewichen, was ihr auch standardmäßig zu nutzen scheint.

Das Problem hatte ich oben ja bereits beschrieben. Bei uns wird das Formular zwar abgeschickt, bleibt dann aber auf der Formularseite anstatt auf die Redirectseite zu springen. Angezeigt wird dann nur noch die Überschrift, der Rest der Seite ist weiß.

Die Redirectseite wird nur noch im "predef"-TS definiert.

3.class = Tx_Formhandler_Finisher_Redirect
3.config.redirectPage = 104

Die ID stimmt natürlich.

Viele Grüße,

Alex

S3PSiS ·

Hi, hatte ebenfalls Probleme mit der LangFile..
Wie bereits gesagt, muss diese per predef eingebunden (langFile.1 & langFile).

Und nun zur eigentlichen Lösung: Mein Typo kam nicht mit Sonderzeichen klar. Habe aus der Beispiel lang.xml mal den deutschen und französischen Kram rausgelöscht und siehe da, es funktioniert.

gmf ·

In diesem Fall sollte man die Übersetzungen in einen CDATA-Bereich geben:

<label index="close"><![CDATA[Schließen]]></label>
S3PSiS ·
S3PSiS schrieb

Und nun zur eigentlichen Lösung: Mein Typo kam nicht mit Sonderzeichen klar. Habe aus der Beispiel lang.xml mal den deutschen und französischen Kram rausgelöscht und siehe da, es funktioniert.

Kleines Update: Problem lag zwar an den Sonderzeichen, aber - so sehr ich mich dafür schäme - hat mein PSPad die Dateien im ANSI Format gespeichert und nicht als UTF-8..

Nach dem Umstellung von PSPad auf UTF-8 funktionieren nun auch die Sonderzeichen in der Sprachdatei.