Zum Inhalt springen

Select in Better Contact

Erstellt am 23. November 2009 · 2 Antworten · letzte Antwort am 14. Januar 2010

Tags: Frage

mee ·

Hallo zusammen

Ich hab für eine Seite die Erweiterung "Better Contact" installiert und auch angepasst für meine Bedürfnisse. Das funktionierte auch echt prima.
Leider hab ich auch noch 4 Select drin, welche auch angezeigt werden, doch beim abschicken geht nun gar nichts mehr. Das Formular gibt mir einfach einen Fehler und wird nicht verschickt, obwohl die Select nicht zwingende Felder sind.
Was mach ich falsch?

Anbei noch den Code im HTML und TS:

	<label for="tx_spbettercontact_input_embroiderycolor" class="tx_spbettercontact_label"><b><nobr>###LABEL_EMBROIDERYCOLOR###</nobr></b></label>
                	<select name="###EMBROIDERYCOLOR###">
                    	<option value="###LLL:motifcolor1###" selected_embroiderycolor_lll:motifcolor1="">###LLL:motifcolor1###</option>
                    	<option value="###LLL:motifcolor2###" selected_embroiderycolor_lll:motifcolor2="">###LLL:motifcolor2###</option>
                        <option value="###LLL:motifcolor3###" selected_embroiderycolor_lll:motifcolor3="">###LLL:motifcolor3###</option>
                    </select>

TS

embroiderycolor {
        	required = 0
        	minLength = 3
        	maxLength = 70
        	default =
        	regex = 
        	disallowed = <>[](){}&;”
        	allowed =
        	default =
    	}
speedprogs ·

Hallo mee,

dein Select ist nicht ganz korrekt. Im Verzeichnis "res/examples/" der Better Contact Extension findest du Beispiele für verschiedene Anwendungsfälle. Unter Anderem auch ein Beispiel für Checkboxen, Radio-Buttons und Selects.

Hier ein Auszug aus der Beispieldatei:

<!--
  Field for contact reason (select)
-->
<p class="tx_spbettercontact_reason">###MSG_REASON###</p>
<label for="tx_spbettercontact_input_reason" class="tx_spbettercontact_label">###LABEL_REASON###</label>
<select id="tx_spbettercontact_input_reason" name="###REASON###">
  <option ###SELECTED_REASON_[###LLL:general###]###>###LLL:general###</option>
  <option ###SELECTED_REASON_[###LLL:support###]###>###LLL:support###</option>
</select>
<br />

Es ist wichtig, dass du dich genau an diesen Syntax hältst.
Die passende TypoScript Konfiguration für dieses Feld sieht folgendermaßen aus:

plugin.tx_spbettercontact_pi1 {
  fields {
    reason {
      required = 1
      default  = TEXT
      default.data = LLL:EXT:sp_bettercontact/pi1/locallang.xml:support
    }
  }
}

Und der Inhalt der Sprachdatei (locallang.xml) würde hierfür so aussehen:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3locallang>
  <meta type="array">
    <type>module</type>
    <description>Additional language labels for extension 'sp_bettercontact'</description>
  </meta>
  <data type="array">
    <languageKey index="default" type="array">
      <label index="msg_reason_empty">Please select a contact reason.</label>
      <label index="reason">Contact reason:</label>
      <label index="general">General request</label>
      <label index="support">Support request</label>
    </languageKey>
    <languageKey index="de" type="array">
      <label index="msg_reason_empty">Bitte wählen Sie einen Kontaktgrund.</label>
      <label index="reason">Kontaktgrund:</label>
      <label index="general">Allgemeine Anfrage</label>
      <label index="support">Support-Anfrage</label>
    </languageKey>
  </data>
</T3locallang>

Beste Grüße

Kai

mee ·

Hi Kai

Super, das hat nun geklappt. Doch leider hab ich jetzt ein ganz komisches Problem.
Wenn ich nur 2 Pulldowns anwähle, werden die Infos korrekt in die Mail gepackt. Aber wenn ich alle Pulldowns auswähle, dann kommt nur bei einem Eintrag ein falscher Inhalt …
Hab alles nochmals überprüft und das sieht eigentlich OK aus. Was kann ich da machen?

Gruss
mee