Zum Inhalt springen

Formhandler Mehrsprachigkeit funktioniert nicht

Erstellt am 8. Oktober 2013 · 4 Antworten · letzte Antwort am 14. Oktober 2013

Tags: Formhandler, TYPO3 4.x, Frage

macmurdock77 ·

Hallo zusammen,

es geht um folgendes Kontaktformular: http://dev.m3-communication.de/herbert/index.php?id=10&L=0
Das Formular wurde mit Formhandler gebaut.

Hier mein TS mit dem ich Formhandler lade:

plugin.tx_jmrecaptcha {
  public_key = 6LeKQN4SAAAAAKxpr0ZhI-dEa5Lp09yUI0_Nko_v
  private_key = 6LeKQN4SAAAAAI_7YlmAGz6masWBJuCft-GhjQji
}

plugin.Tx_Formhandler.settings.validators.1 {
  class = Tx_Formhandler_Validator_Default
  config {
    fieldConf {
      recaptcha_response_field.errorCheck.1 = jmRecaptcha
    }
  }
}

plugin.Tx_Formhandler.settings {
	#Der Name der später auch unter „Vordefinierte Formulare“ zu finden ist
  name = Kontaktformular
  #Der Pfad für die Sprach & Template Datei
	langFile = fileadmin/formhandler/lang.xml
	templateFile = fileadmin/formhandler/template.html
	#Wenn irgendetwas nicht funktioniert liefert debug praktischerweise alles Informationen die man braucht
	debug = 0  
	addErrorAnchors = 1  
	formValuesPrefix = formhandler

  #Speichert die abgeschickten Formulare in die Datenbank
	loggers {
		1 {
		  class = Tx_Formhandler_Logger_DB
		}
	}  
     
	finishers {
		1.class = Tx_Formhandler_Finisher_Mail
		1.config {
		  #Die E-Mail die an den Admin gehen soll
			admin {
				to_email = info@aestheticbalance.de
				sender_email = info@aestheticbalance.de
				sender_name = aestheticbalance
				subject = Kontaktanfrage
			}
		  #Optional, die E-Mail die an den User gehen soll
			user {
			  #Hier trägt man die Namen der Felder ein, also z.B. email oder firstname
				to_email = email
				to_name = aestheticbalance
				sender_email = info@aestheticbalance.de
				sender_name = aestheticbalance
				subject = Bestätigung Kontaktanfrage
			}
		}
		
		#Optional, auf diese Seite wird der Besucher nach dem Abschicken weiter geleitet
		2.class = Tx_Formhandler_Finisher_Redirect
		2.config.redirectPage = 122
   
	}    
  
  #Hier kommen alle Feldüberprüfungen rein, in diesem Fall sehr einfach gehalten  
	validators {
		1.class = Tx_Formhandler_Validator_Default
		1.config {       
			fieldConf {
			lastname.errorCheck.1 = required
                        firstname.errorCheck.1 = required
			email.errorCheck.1 = required
			phone.errorCheck.1 = required
			message.errorCheck.1 = required
			newsletter.errorCheck.1 = required
			}
		}
	}
}

Hier meine lang.xml:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3locallang>
	<data type="array">
		<languageKey index="default" type="array">
			<label index="legend">Personal Information</label>
			<label index="firstname">Name</label>
			<label index="firstname">Firstname</label>
			<label index="lastname">Lastname</label>
			<label index="email">E-Mail</label>
			<label index="company">Firma</label>
			<label index="interests">Interests</label>
			<label index="interests_sports">Sports</label>
			<label index="interests_music">Music</label>
			<label index="interests_science">Science</label>
			<label index="interests_cars">Cars</label>
			<label index="personal_info">Personal info</label>
			<label index="contact">Contact</label>
			<label index="contact_via">Contact via</label>
			<label index="contact_via_email">E-mail</label>
			<label index="contact_via_phone">Phone</label>
			
			<label index="submit">Send</label>
			
			<label index="error_name_required">Name is missing!</label>
			<label index="error_name_maxLength">Name has to be shorter than ###value### characters!</label>
			<label index="error_firstname_required">Firstname is missing!</label>
			<label index="error_firstname_maxLength">Firstname has to be shorter than ###value### characters!</label>
			<label index="error_lastname_required">Lastname is missing!</label>
			<label index="error_lastname_maxLength">Lastname has to be shorter than ###value### characters!</label>
			<label index="error_interests_minItems">Select at least ###value### interests!</label>
			<label index="error_interests_required">Select some interests!</label>
			<label index="error_email_required">Enter your E-mail address!</label>
			<label index="error_email_email">E-mail address must be valid syntax!</label>
			<label index="error_contact_via_required">Please select how to contact You!</label>
			<label index="required_fields">Fields marked with * are required!</label>
		</languageKey>
		<languageKey index="en" type="array">
			<label index="legend">Personal Information</label>
			<label index="gender">Gender</label>
			<label index="mrs">Mrs</label>
			<label index="mr">Mr</label>
			<label index="title">Title</label>	
			<label index="firstname">Name</label>
			<label index="firstname">Firstname</label>
			<label index="lastname">Lastname</label>
			<label index="email">E-Mail</label>
			<label index="message">Message</label>
			<label index="interests">Interests</label>
			<label index="interests_sports">Sports</label>
			<label index="interests_music">Music</label>
			<label index="interests_science">Science</label>
			<label index="interests_cars">Cars</label>
			<label index="personal_info">Personal info</label>
			<label index="contact">Contact</label>
			<label index="contact_via">Contact via</label>
			<label index="contact_via_email">E-mail</label>
			<label index="contact_via_phone">Phone</label>
			<label index="submit">Send</label>
			<label index="error_name_required">Name is missing!</label>
			<label index="error_name_maxLength">Name has to be shorter than ###value### characters!</label>
			<label index="error_firstname_required">Firstname is missing!</label>
			<label index="error_firstname_maxLength">Firstname has to be shorter than ###value### characters!</label>
			<label index="error_lastname_required">Lastname is missing!</label>
			<label index="error_lastname_maxLength">Lastname has to be shorter than ###value### characters!</label>
			<label index="error_interests_minItems">Select at least ###value### interests!</label>
			<label index="error_interests_required">Select some interests!</label>
			<label index="error_email_required">Enter your E-mail address!</label>
			<label index="error_email_email">E-mail address must be valid syntax!</label>
			<label index="error_contact_via_required">Please select how to contact You!</label>
			<label index="required_fields">Fields marked with * are required!</label>
		</languageKey>
		<languageKey index="de" type="array">
			<label index="legend">Persönliche Daten</label>
			<label index="gender">Anrede</label>
			<label index="mrs">Frau</label>
			<label index="mr">Herr</label>
			<label index="title">Titel</label>		
			<label index="firstname">Vorname</label>
			<label index="lastname">Nachname</label>
			<label index="email">E-Mail</label>
			<label index="phone">Telefon</label>
			<label index="mobile">Telefon mobil</label>
			<label index="message">Ihre Anfrage</label>
			<label index="newsletter">bevorzugter Kommunikationsweg</label>
			<label index="interests">Interessen</label>
			<label index="interests_sports">Sport</label>
			<label index="interests_music">Musik</label>
			<label index="interests_science">Wissenschaft</label>
			<label index="interests_cars">Autos</label>
			<label index="personal_info">Persönlisch Information</label>
			<label index="contact">Kontakt</label>
			<label index="contact_via">Bitte kontaktieren Sie mich per</label>
			<label index="contact_via_email">E-mail</label>
			<label index="contact_via_phone">Telefon</label>
			<label index="submit">Absenden</label>
			<label index="error_firstname_required">Vorname ist nicht ausgefüllt!</label>
			<label index="error_lastname_required">Nachname ist nicht ausgefüllt!</label>
			<label index="error_name_maxLength">Name muss kürzer sein als ###value### Zeichen!</label>
			<label index="error_firstname_required">Vorname ist nicht ausgefüllt!</label>
			<label index="error_firstname_maxLength">Vorname muss kürzer sein als ###value### Zeichen!</label>
			<label index="error_lastname_required">Nachname ist nicht ausgefüllt!</label>
			<label index="error_lastname_maxLength">Nachname muss kürzer sein als ###value### Zeichen!</label>
			<label index="error_interests_minItems">Wählen Sie mindestens ###value### Interessen!</label>
			<label index="error_interests_required">Sie müssen Interessen angeben!</label>
			<label index="error_newsletter_required">Bitte geben Sie Ihren bevorzugten Kommunikationsweg an!</label>
			<label index="error_recaptcha_response_field_jmRecaptcha">Der Sicherheitscode ist falsch!</label>
			<label index="error_email_required">Geben Sie Ihre E-Mailadresse ein!</label>
			<label index="error_email_email">E-Mailadresse ist ungültig!</label>
			<label index="error_phone_required">Bitte geben Sie eine Telefonnummer an!</label>
			<label index="error_message_required">Bitte geben Sie eine Nachricht ein!</label>
			<label index="error_contact_via_required">Bitte wählen Sie wie wir Sie kontaktieren sollen!</label>
			<label index="required_fields">Felder mit * sind Pflichtfelder!</label>
		</languageKey>
		<languageKey index="ru" type="array">
			<label index="legend">Informations personnelles</label>
			<label index="firstname">Prénom</label>
			<label index="lastname">Nom</label>
			<label index="email">Email</label>
			<label index="company">Firma</label>
			<label index="interests">Intérêts</label>
			<label index="interests_sports">Sports</label>
			<label index="interests_music">Musique</label>
			<label index="interests_science">Science</label>
			<label index="interests_cars">Voitures</label>
			<label index="personal_info">Données personnelles</label>
			<label index="contact">Coordonnées</label>
			<label index="contact_via">Contacter via</label>
			<label index="contact_via_email">Email</label>
			<label index="contact_via_phone">Téléphone</label>
			<label index="submit">Envoyer</label>
			<label index="error_firstname_required">Il manque le prénom!</label>
			<label index="error_firstname_maxLength">Le prénom doit comprendre moins de ###value### caractères!</label>
			<label index="error_lastname_required">Il manque le nom!</label>
			<label index="error_lastname_maxLength">Le nom doit comprendre moins de ###value### caractères!</label>
			<label index="error_interests_minItems">Sélectionner au moins ###value### intérêts!</label>
			<label index="error_interests_required">Sélectionner quelques intérêts!</label>
			<label index="error_email_required">Saisir votre adresse email!</label>
			<label index="error_email_email">L'adresse email doit être valide!</label>
			<label index="error_contact_via_required">Sélectionner le mode de contact!</label>
			<label index="required_fields">Les champs marqués de * sont obligatoires!</label>
		</languageKey>
	</data>
</T3locallang>

Die Sprachen sind auf der Seite wie folgt gesetzt:

deutsch: L=0
englisch: L=1
russisch: L=2

Leute, bitte helft mir ich bin am verzweifeln 😢

karlchen ·

hi,

ich wollte gerade schauen ob in deiner html Datei auch die Platzhalter ###LLL:firstname### korrekt hinterlegt sind, doch wenn man fileadmin/formhandler/template.html aufrufen will kommt nur ein 404...
Sind deine Angaben der Pfade dementsprechend korrekt oder ?

macmurdock77 ·

Hi,

Danke schonmal für die Hilfe, ja die Pfade sind korrekt, ich habe gerade an der Seite gearbeitet weswegen es nicht ging, es sollte jetzt wieder gehen.

karlchen ·

hi,

selbst wenn man die Sprache gewechselt hat steht in deinem HTML Quelltext immer noch überall "de"
z.B.

<meta http-equiv="language" content="de" />

Kann es daher sein,das dein Sprachswitch unvollständig ist ?
Hier ein Beispiel:

# de (explicit)
[globalVar = GP:L = 0]
config{
  sys_language_uid = 0
  language = de
  locale_all = de_DE.UTF-8
  htmlTag_langKey = de
}
[global]

// Condition to set language according to L POST/GET variable
[globalVar = GP:L = 1]
config {
  htmlTag_langKey = en
  sys_language_uid = 1
  language = en
  locale_all = en_EN.UTF-8
}
[global]