Wie kann ich das Land des Benutzers ermitteln und an eine darauf basierende URL weiterleiten?

Ich betrachte speziell Australien, Neuseeland, USA, Großbritannien und andere.

Am besten mit PHP, kann aber bei Bedarf auch Javascript verwenden.

2
JaceG 25 Nov. 2013 im 09:25

3 Antworten

Beste Antwort

Dies kann Ihnen helfen, Land zu bekommen, dann können Sie entsprechend umleiten.

<?PHP

  function visitor_country()
  {
    $client  = @$_SERVER['HTTP_CLIENT_IP'];
    $forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
    $remote  = $_SERVER['REMOTE_ADDR'];
    $result  = "Unknown";
    if(filter_var($client, FILTER_VALIDATE_IP))
    {
       $ip = $client;
    }
    elseif(filter_var($forward, FILTER_VALIDATE_IP))
    {
      $ip = $forward;
    }
    else
    {
      $ip = $remote;
    }

    $ip_data = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=".$ip));

    if($ip_data && $ip_data->geoplugin_countryName != null)
    {
       $result = $ip_data->geoplugin_countryName;
    }

    return $result;
}

echo visitor_country(); // Output Coutry name [Ex: United States]

?>

ODER in Javascript.

<html>
<head>
  <script language="JavaScript" src="http://www.geoplugin.net/javascript.gp" type="text/javascript"></script>
</head>
<body>
  <script language="Javascript"> 
document.write("Welcome to our visitors from "+geoplugin_city()+", "+geoplugin_countryName()); 
// window.location = "http://www.yoururl.com";  /* you can forward user to url using this line of code according to your conditions
  </script>
</body>
</html>
4
Adil Abbasi 25 Nov. 2013 im 05:47