kostenloser Webspace werbefrei: lima-city


Automatische Spracheinstellung

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    newchurch

    newchurch hat kostenlosen Webspace.

    Hi,
    Wie mache ich dass, dass ermittelt wird, aus welchem Land meine Seite aufgerufen wird, und dann automatisch auf entweder die Deutsche oder eben die Englische Fassung weiterleitet wird?

    Ob in Htlm, php, oder javascript ist mir eig. egal.

    Danke schonmal
    newchurch
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    newchurch schrieb:
    Wie mache ich dass, dass ermittelt wird, aus welchem Land meine Seite aufgerufen wird
    Willst du das echt anhand eines Landes entscheiden? Viel besser wäre anhand der Browsersprache:
    $lang = $_SERVER["HTTP_ACCEPT_LANGUAGE"];


    Aber dazu gibt es hier schon Threads...
  4. m******e

    newchurch schrieb:
    Ob in Htlm, php, oder javascript ist mir eig. egal.
    Sollte es aber nicht.
    Mit Htlm gehts schon mal gar nicht, mit JavaScript gehts nur, wenn es zugelassen wird, also bleibt ja nur PHP übrig.

    hackyourlife schrieb:
    Willst du das echt anhand eines Landes entscheiden?
    Eben. Was ist mit denen, die Proxys & modifizierte Header verwenden?

    Ich würde es in der gebräuchlichen Sprache verwenden, und andere Sprachen ggf anbieten.
    Nur mal so als Tipp.

    hackyourlife schrieb:
    Aber dazu gibt es hier schon Threads...
    Genau, zB hier.

    Falls das nicht reicht, fallen mir auf Anhieb viele Möglichkeiten ein, hier nur 2 Beispiele:
    Beispiel 1
    Beispiel 2
  5. Falls man das ganze nun wirklich über die IP machen will ( trotz berechtigten Einwänden zu Proxies )
    $ip = $_SERVER['REMOTE_ADDR'];
    $json = file_get_contents("http://api.easyjquery.com/ips/?ip=".$ip."&full=true");
    $result= json_decode($json,true);
    echo $result['COUNTRY'];


    Beitrag zuletzt geändert: 23.5.2012 16:23:46 von kelserific
  6. Vielleicht probierst du es mal so:
    $sprache = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
    $weiterleitung = '';
    
    if (eregi('de', $sprache) && !isset($REX['CUR_CLANG'])) {
    // deutsch
    $weiterleitung = 'index.php?article_id=15&clang=1';
    }elseif(eregi('en', $sprache) && !isset($REX['CUR_CLANG'])) {
    // english
    $weiterleitung = 'index.php?article_id=15&clang=2';
    }else{
    // default standard
    $weiterleitung = 'index.php?article_id=15&clang=1';
    }
    
    header ("location: $weiterleitung");
    exit;
  7. Ich mache es so:
    <?php
    ini_set("session.gc_maxlifetime", 2000); // hochsetzen ?
    $default_lang = 'en';
    if(!isset($_SESSION['lang'])) // erster aufruf?
    {
        if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) // vom Browser holen
        {
          $_SESSION['lang'] = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
        }else  // wie, nicht gesetzt?
        {
          $_SESSION['lang'] = $default_lang; // dann default
        }
    }
    if(isset($_GET['lang'])) // da hat jemand eine Sprache ausgewählt
    {
        $_SESSION['lang'] = $_GET['lang'];
    }
    // jetzt noch eine kleine Sicherheitsprüfung
    if(  ('de' != $_SESSION['lang']) &&
         ('en' != $_SESSION['lang']) &&
    	 ('es' != $_SESSION['lang']) &&
         ('fr' != $_SESSION['lang'])  )
    {
      $_SESSION['lang'] = $default_lang; // dann default
    }     
      if($_SESSION['lang'] == "de")
      {
      include 'lang/de.php';
      }
      elseif($_SESSION['lang'] == "en")
      {
      include 'lang/en.php';
      }
      else
      {
      include 'lang/en.php';
      }
    ?>
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!