Hallo zusammen,
ich habe eine Seite, die acht verschiedene Sprachversionen hat. Jetzt möchte ich, daß die gemeinsame Startseite (index.html) automatisch in der entsprechenden Landessprache erscheint, von der aus der Nutzer sich die Seite aus ansieht.
Wenn bspw. ein italienischer Nutzer die Seite annavigiert, kommt die italienische Sprachversion, beim deutschen Besucher die deutsche, usw.
Kann man das überhaupt automatisch machen? Kann man eventuell die mitgelieferte IP Adresse oder Top-Level-Domain dazu nutzen und diese auslesen? Man könnte ja bei unklaren Top-Level-Domains wie .com, .org oder .net immer automatisch die englische als Standard nehmen.....
Wer kennt da eventuell einen Trick?
Grusz
.datenbaer
Antworten
Es ginge in der Tat am besten per IP.
Du kannst öffentliche IP Datenbanken abfragen. leider hab ich grad kein Link zur Hand.
Du kannst aber auch auf die $_SERVER["ACCEPT_LANGUAGE"] reagieren ;)
2.
Entweder über die Browserinformationen oder über die IP...es gibt db-Tabellen damit kannst du über die IP
an das Land kommen...oder natürlich auch über die Domain....
100% sicher ist das aber alles nicht.....aber wir kommen der Wahrheit näher
3.
Jeder moderne Browser sendet mit dem Request auch die Sprache des Benutzers mit. print_r($_SERVER)!
4.
hi,
ich weiss nicht ob das noch relevant ist, aber du solltest auch die manuelle auswahl der sprache aufjedenfall ermoeglichen...
den es gibt auch leute, die sich im anderen land befinden (z.b. Tourist), und dort im internet-cafe auf die seite kommen....
zur automatischer sprach-auswahl koenntest du folgende variablen verwenden:
- $_SERVER['HTTP_USER_AGENT'] <- vom browser abhaengig; steht meistens auch in welcher sprache der browser ist, z.b.: "Mozilla/5.0 (Windows; U; Windows NT 5.1; de-DE; rv:1.7.12) Gecko/20050919 Firefox/1.0.7"
- $_SERVER['HTTP_ACCEPT_LANGUAGE'] <- vom browser aktezptierte sprachen
- $_SERVER['HTTP_ACCEPT_CHARSET'] <- evtl. auch noetig, wegen charset-codierung
- $_SERVER['REMOTE_ADDR'] <- und zu guter letzt, die ip-adresse des benutzers
viel spass
gruss b166er
5.
Das ist doch ein Standardproblem mit längst funktionierender Standardlösung im Apache - schau Dir mal in einer normalen XAMPP Installation das htdocs Verzeichnis an - das sieht so ungefähr aus:
Code: In Zwischenablage kopieren (nur IE)
Je nach Länderkennung des Browser zeigt Apache das "richtige" index.html.xx an - und genau so kannst Du es selbst benutzen. Das geht alles "von alleine" mit der richtigen Konfiguration in httpd.conf. Die Standardeinstellung ist schon "richtig", und die notwendigen Stichworte heißen u.a. MultiViews und AddLanguage - schau Dir die httpd.conf an und lies die Doku dazu.
6.
Wobei es aber ja nun nicht angebracht wäre, die PHP-Datei 20 mal zu kopieren. Deine Lösung, Rana, scheint mir also kaum praktikabel, wenn man nicht zusätzliche Tools hat - aber existieren die schon?
7.
Aus meiner Wühlkiste:
Code: In Zwischenablage kopieren (nur IE)