mehrsprachig

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Neo_
Mitglied
Beiträge: 55
Registriert: 17.02.2005 17:25

mehrsprachig

Beitrag von Neo_ »

Hy,

Ich hab auch ne Frage zu diesen Thema. Ich biete meine Page (in php geschrieben) 2-sprachig an, zumindest hab ich es vor. Gelöst hab ich es mit $_SERVER["HTTP_ACCEPT_LANGUAGE"]. Dazu hab ich meine Seite mit Platzhaltern "gefüllt" die dann mit der jeweiligen Sprachdatei gefüllt wird. Jetzt möcht ich nebenbei den Usern zusätzlich anbieten, die Sprache selber zu wählen. Nur hab ich derzeit keine Ahnung wie das funktionieren könnte.

Könnte mir da jemand helfen? Realisiert soll das ganze per Klick auf die gewünschte Flagge werden.
Benutzeravatar
hagily
Mitglied
Beiträge: 1139
Registriert: 25.08.2005 22:05
Wohnort: Schweinfurt
Kontaktdaten:

Beitrag von hagily »

Hi!

Ganz einfach!

Code: Alles auswählen

if (HTTP_GET_VARS['lang'] =='de')
{
include(DEINE DEUTSCHE SPRACHDATEI);
}
else
{
include(DEINE STANDART SPRACHDATEI);
}
Dein Link müsste dementsprechend so aussehen
xyz.php?lang=de
Jetzt würde die deutsche Sprachdatei aufgerufen werden
wenn nur xyz.php aufgerufen wird die Standartdatei
Neo_
Mitglied
Beiträge: 55
Registriert: 17.02.2005 17:25

Beitrag von Neo_ »

Ne, ich glaub du hast mich da irgendwie falsch verstanden. Diese Sprachdateien stellt nicht die Problematik dar, das hab ich a schon längst umgesetzt. Meine Frage war, wie ich es realisiere, neben der automatischen Spracherkennung, den User die möglichkeit zusätzlich biete, die Sprache per Klick auf die Flagge "händisch die Sprache zu wechseln.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Code: Alles auswählen

<?
if( $_GET['lang'] == 'de' ) // deutsch
{
setcookie('sprache', 'de', time()+3600);
}
else if( $_GET['lang'] == 'en' ) // englisch
{
setcookie('sprache', 'de', time()+3600);
}

$lang = ( isset($_COOKIE['sprache']) ) ? $_COOKIE['sprache'] : $_SERVER['HTTP_ACCEPT_LANGUAGE'];
?>
In $lang haste dann die Sprache die der User ausgewählt hat.
Und das wird immer aktualisiert wenn man auf die Flaggen klickt sonst nicht.
Neo_
Mitglied
Beiträge: 55
Registriert: 17.02.2005 17:25

Beitrag von Neo_ »

Und wie bring ich das jetzt in verbindung mit den Flaggenbuttons? Irgendwie steh ich heut voll daneben -.-
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Code: Alles auswählen

<a href="deine_datei.php?deine_parameter&lang=de"><img src="dein_flaggenbild_de.gif" alt="Deutsch" /></a>
:wink:
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Neo_
Mitglied
Beiträge: 55
Registriert: 17.02.2005 17:25

Beitrag von Neo_ »

Ne,... funktioniert nicht :(
Heut dürft echt nicht mein Tag sein :/
Dennis63
Ehemaliges Teammitglied
Beiträge: 2597
Registriert: 02.07.2003 18:46

Beitrag von Dennis63 »

Geht nicht, gibts nicht. ;)

Was kommt für eine Fehlermeldung?
Kommt die Variable in PHP an?
Was steht dann in PHP in der Variable?


Ich habe das bei mir so gelöst:
1) Es wird geschaut, ob der User im Pfad eine Sprachangabe hat (/de/ = Deutsch, und /en/ = Englisch
2) Es wird ein Cookie gesucht, welches vorher gesetzt wurde, falls der User mal auf eine der Sprachflaggen geklickt hat
3) Es wird nach der Browsersprache gesucht
3b) (alt) Die Domain .de ergibt Deutsch und .com ergibt Englisch

Das wurde dann abgearbeitet, bis etwas gefunden wurde, was passt.

Grüße
Dennis
Antworten

Zurück zu „Coding & Technik“