• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Automatische Weiterleitung nach Sprache

user01

New member
Hallo, ich habe das Problem, dass die Weiterleitung entweder im IE oder im Firefox nicht funktioniert.

So funktioniert es mit dem IE:
<script languange="JavaScript">
if(navigator.userLanguage=="de"){location.href="de/index.html"}
else{location.href="en/index.html"}
</script>

Und so funktioniert es mit Firefox:
<script type="text/javascript">
if(window.navigator.language == 'de'){location.href = 'de/index.html';}
else{location.href = 'en/index.html';}
</script>

Was muss ich ändern, damit es mit beiden funktioniert?
 
Ich muss euch JS-Freaks leider bremsen.
Eine Spracherkennung funktioniert nicht wirklich clientseitig.
Was, wenn ich einen Browser installiere und ihn englischsprachig laufen lasse (was ich eigentlich oft mache)?
Dann kriege ich eine englische Seite präsentiert, obwohl ich das nicht möchte.
Eine Länderkennung lässt sich nur ANNÄHERND realisieren, wenn sie serverseitig ist, z. B. durch IP-Adressenbereiche o. ä.
 
Bei dem o.g. Beispiel, wirst du die Seite immer auf deutsch sehen, egal welche Sprache du einstellst.

Erst wenn du eine engl. Version des Browsers installierst, siehst du die Seiten auf englisch.

Ich denke, dass das so gut wie alle Fälle abdeckt.
 
Bei dem o.g. Beispiel, wirst du die Seite immer auf deutsch sehen, egal welche Sprache du einstellst.

Erst wenn du eine engl. Version des Browsers installierst, siehst du die Seiten auf englisch.

Ich denke, dass das so gut wie alle Fälle abdeckt.
Korrigiere mich, wenn ich etwas anderes geschrieben habe.
Und wenn Du denkst, dass Du so "so gut wie alle Fälle abgedeckst hast", liegst Du falsch...
 
Hallo,

wenn es nicht unbedingt javaScript sein muss, würde ich PHP vorschlagen!
Habe dieses Script auch auf unseren Webseiten eingesetzt.......geht wunderbar...
und es ist Plattform unabhänig........

PHP:
<?php
if (strstr($_SERVER['HTTP_ACCEPT_LANGUAGE'], "de"))
{ header("Location: de.php"); }
else if (strstr($_SERVER['HTTP_ACCEPT_LANGUAGE'], "en"))
{ header("Location: en.php"); }
else if (strstr($_SERVER['HTTP_ACCEPT_LANGUAGE'], "pl"))
{ header("Location: pl.php"); }
else
{ header("Location: en.php"); }
?>

dieses Script einfach in der Index als ersten Eintrag machen.........
damit hast du eine Umleitung zur jeweiligen Spracheseite

die index/default- seite "muss" die endung *.php bekommen und die Index wird damit zur reinen weiterleitungs seite.....den Inhalt der webseiten musst du dann auf den jeweiligen sprachseiten einbinden...
Gruß
Dieter
 
Zuletzt bearbeitet:
@F4e: Auch dein PHP-Script deckt nicht alle Fälle ab.
Beispiel: Hab im FF als bevorzugte Sprache en eingestellt, als 2. de.
$_SERVER["HTTP_ACCEPT_LANGUAGE"] liefert ""en,de-de;q=0.8,de;q=0.5,en-us;q=0.3", verzweigt wird aber auf die de Seite, da auch "de" gefunden wird.
 
Auch wenn dieser Post schon seeehr alt ist,
hat er eine Lösung für mein Problem aufgezeigt.

Jetzt habe ich aber, wenn ich die Seite mit dem unten stehenden Code besuche (von firefox und handy aus),
das Problem, dass ich weder als englisch noch als deutsch eingestuft werde.

Ich habe deutsche, englische und russische Besucher und möchte diese jeweils entsprechend
vorsortieren.

Code:
<script languange="JavaScript">
if(navigator.userLanguage=="de" || window.navigator.language == 'de')
{location.href="DEUTSCHE SEITEN URL"} 

else
if(navigator.userLanguage=="en" || window.navigator.language == 'en')
{location.href="ENGLISCHE SEITEN URL"} 

else
{location.href="RUSSISCHE SEITEN URL"}
</script>

Noch schöner wäre ein neuer Tab mit der URL :)

zweite Frage:
setze ich else richtig ein?

Wenn ihr mögt könnt ihr meine Webseite besuchen und mir mitteilen auf welcher Seite Ihr rauskommt.
(deutcher, englischer oder russischer Banner)

Achtung die beworbenen Inhalte sind kostenpflichtig!
Bitte informiert euch erst gründlich, bevor ihr etwas kauft!
Ich möche euch nicht abkassieren, sondern eine Lösung für mein Problem!
 
Zuletzt bearbeitet:
Zurück
Oben