Feststellung des Landes

Hallo,
ist es möglich, festzustellen, in welchem Land sich der Besucher meiner Webseite befindet und ihn dann auf die jeweilige Seite umzuleiten.

Beispiel:
Besucher ist in England - umleitung zur Seite england.html
Besucher ist in Deutschland - umleitung zu Seite deutschland.html
Besucher ist in Österreich - umleitung zur Seite deutschland.html

Und wenn der Besucher aus noch einem anderen Land kommt, dann umleitung zur Seite auswahl.html

Ist so etwas möglich mit JavaScript ?

Die Idee kam mir als ich auf Google war und der mir angezeigt hat, das ich mich in Deutschland befinde.

Das ist ein IP dienst der feststellt wo deine IP umgefähr betrieben wird, das problem ist nur das es an grenzgebieten (z.b. bei ALICE) , leider dennoch als Fremdland angezeigt wird (z.b. Italien) obwohl es in deutschland ist. Technisch Verwaltet (region IP-kontingent für den DHCP server ) wird es eben in Italien , bezahlen tut man aber in Deutschland .
Klinkt komisch , ist aber so !!!

Klinkt komisch , ist aber so !!!

und nein , so leicht kommt man nicht an die IP-range der einzelnen unternehmen bzw gebiete herran.
Und ein dienst wird kosten, pro click.

Hallo,
ist es möglich, festzustellen, in welchem Land sich der
Besucher meiner Webseite befindet

  1. javascript ruft Java auf:

    ip = „konnte nicht ausgelesen werden“;

    if (navigator.javaEnabled()) {
    vartool = java.awt.Toolkit.getDefaultToolkit();
    addr = java.net.InetAddress.getLocalHost();
    ip = addr.getHostAddress();
    document.write("Besucher-IP: " + ip );
    }


  1. mit SSI , Übergabe der IP in javascript-variable

    var ip = ‚<!–#echo var=„REMOTE_ADDR“–>‘;

online-whois-abfrage mit javascript nicht möglich

eine menge arbeit: die ip-range des denic in ein array schreiben, damit nach der ip gesucht werden kann.
dann findest du zumindest die deutschen ips


  1. land/sprache über den useragent:

    user = navigator.userAgent.toLowerCase();
    land ="??";
    if ( such_de = user.indexOf(„de;“)){land=„deusch“};
    document.write( land );

hier wird auf jeden fall DE; und de; gefunden

viel erfolg
steferbo

Sprache per JavaScript feststellen
Hallo,

dafür ist navigator.language zuständig. Selfhtml (http://de.selfhtml.org/javascript/objekte/navigator…) erläutert dies genauer.

Eine Bestimmung über die IP ist über JavaScript nicht möglich. Allerdings ist das auch Unsinn. Der Britte der in Deutschland Urlaub macht, will ja auf seinem Notebook die Seite in Englisch sehen, auch wenn er eine dt. IP hat.

navigator.language ist ein Array, mit den bevorzugten Sprachen.
Dieses Array würde ich durchlaufen und bei einem Treffer die entsprechende Sprache anzeigen. Wichtig: Überprüfe alle Sprachen (also Engl. und Deutsch).
Überprüfst du nur auf Engl. und nimmst beim nichtfinden Deutsch, kann jemand eine englische Seite angezeigt bekommen, wenn er sowohl Deutsch, als auch Englisch in seinen Sprachen gewählt hat, aber Deutsch favorisiert hat.

Die Selfhtmllösung sieht auch schön aus, aber da gibt es das selbe Problem. das kann mit einer leichten Abwandlung aber umgangen werden:

var lang = "de"; /\* Standardsprache \*/
if (navigator.language.indexOf("en") \> -1 &&
 (navigator.language.indexOf("de") == -1 || navigator.language.indexOf("de") \> navigator.language.indexOf("en"))
 ) {
 /\* Wenn Englisch gewählt ist und Deutsch nicht gewählt ist,
 ODER: Wenn Englisch gewählt ist und Deutsch eine geringere Priorität als Englisch hat, DANN: \*/
 lang = "en";
}

Bei mehr als 2 Sprachen wird das unübersichtlich. Dann wäre das durchsuchen des Arrays sinnvoller.