Zum Inhalt springen

Abfrage der Sprache funktioniert nicht

Erstellt am 30. September 2005 · 2 Antworten · letzte Antwort am 4. Oktober 2005

Tags: Frage

TorstenS ·

Hi,

ich habe die Sprachumschaltung implementiert, wie es in der Literatur steht. Am Anfang die UID gesetzt und das PHP-Script vom Kaspar eingebunden. Funktioniert wunderbar. Jetzt möchte ich die eingestellte Sprache auslesen. Überall geht man davon aus, das der folgende Code funktioniert:

[globalVar = GP:L=0]
marks.TOOLS = TEXT
marks.TOOLS.value = Deutsch
[global]
[globalVar = GP:L=1]
marks.TOOLS = TEXT
marks.TOOLS.value = Englisch
[global]

nur bei mit steht immer "Deutsch". Der Haupttext wird in englisch dargestellt, Menue und Überschrift sind übersetzt - nur bei TOOLS bleibt immer "Deutsch".

Am Anfang habe ich die Sprachen definiert mit:

config.linkVars = L
config.sys_language_uid = 0
config.language = de
marks.TOOLS = TEXT
marks.TOOLS.value = Deutsch
[globalVar = GP:L=1]
config.sys_language_uid = 1
config.language = en
marks.TOOLS = TEXT
marks.TOOLS.value = Englisch
[global]

Dass die Variable sys_language_uid richtig gesetzt wird, beweist eigentlich das Script my_languageMenu.php und im URL der Testseite erscheint auch "index.php?id=1&L=1", wenn ich auf Englisch bin.

Was kann denn an meiner Abfrage nicht richtig sein?

Gruß, Torsten

sirwylm ·
TorstenS schrieb

Hi,

ich habe die Sprachumschaltung implementiert, wie es in der Literatur steht. Am Anfang die UID gesetzt und das PHP-Script vom Kaspar eingebunden. Funktioniert wunderbar. Jetzt möchte ich die eingestellte Sprache auslesen. Überall geht man davon aus, das der folgende Code funktioniert:

[globalVar = GP:L=0]
marks.TOOLS = TEXT
marks.TOOLS.value = Deutsch
[global]
[globalVar = GP:L=1]
marks.TOOLS = TEXT
marks.TOOLS.value = Englisch
[global]

nur bei mit steht immer "Deutsch". Der Haupttext wird in englisch dargestellt, Menue und Überschrift sind übersetzt - nur bei TOOLS bleibt immer "Deutsch".

Am Anfang habe ich die Sprachen definiert mit:

config.linkVars = L
config.sys_language_uid = 0
config.language = de
marks.TOOLS = TEXT
marks.TOOLS.value = Deutsch
[globalVar = GP:L=1]
config.sys_language_uid = 1
config.language = en
marks.TOOLS = TEXT
marks.TOOLS.value = Englisch
[global]

Dass die Variable sys_language_uid richtig gesetzt wird, beweist eigentlich das Script my_languageMenu.php und im URL der Testseite erscheint auch "index.php?id=1&L=1", wenn ich auf Englisch bin.

Was kann denn an meiner Abfrage nicht richtig sein?

Gruß, Torsten

Jetzt nur geraten, könnte an der Doppeldef. liegen, probiers doch mal so:

#object default (deutsch)
marks.TOOLS = TEXT
marks.TOOLS.value = Deutsch
# (english)
[globalVar = GP:L=1]
marks.TOOLS.value = English
[global]

Wie gesagt nur geraten, aber wenn dies nicht geht sollte aber doch der Weg über ein temp. Objekt gehen, ungefähr so:

#temp object def. (default=deutsch)
temp.tools = TEXT
temp.tools.value = Deutsch
# english
[globalVar = GP:L=1]
temp.tools.value = English
[global]

# temp. object auf marker parsen
marks.TOOLS < temp.tools

Beste Grüße
Wilnis

TorstenS ·

Hi,

ich hab's probiert. Deine erste Variante hat es nicht gebracht aber mit Variante 2 funktioniert es super - auch mit 3 Sprachen.

Danke & Gruß,
Torsten