检测国家和重定向

时间:2014-02-13 05:52:46

标签: javascript html json jsonp

这是我的代码,但它不起作用。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script src="http://api.wipmania.com/jsonp?callback.js"></script>
<script type="text/javascript">
switch(country_code()){
case "IN" :
        document.location.href = "http://xxxxxxxx.biz/theme.php";
        break;
}
</script> 
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
</html>

我想检测用户的国家/地区并对其进行适当的重定向。

2 个答案:

答案 0 :(得分:6)

您正在使用wipmania链接错误,它需要具有可以执行的函数的名称。你可以用两种方式使用它,一种是使用jquery调用jsonp ajax:

$.ajax({
   url:"http://api.wipmania.com/jsonp?callback=?",
   dataType:"jsonp"
}).done(function(data){
     switch(data.address.country_code){
        case "IN" :
           document.location.href = "http://xxxxxxxx.biz/theme.php";
        break;
     }      
});

或在代码中创建一个函数,然后在wipmania链接中使用该函数的名称

<script>
function determineCountry(data){
   switch(data.address.country_code){
      case "IN" :
         document.location.href = "http://xxxxxxxx.biz/theme.php";
      break;
   }    
}
</script>
<script type="text/javascript" src="http://api.wipmania.com/jsonp?callback=determineCountry"></script>

答案 1 :(得分:0)

您可以使用php实现此目的。这应该可以帮助你。

<?php
// ccr.php - country code redirect
require_once('geoplugin.class.php');
$geoplugin = new geoPlugin();
$geoplugin->locate();
$country_code = $geoplugin->countryCode;
switch($country_code) {
case 'US':
header('Location: http://www.domain.com/links/usa.php');
exit;
case 'CA':
header('Location: http://www.domain.com/links/canada.php');
exit;
case 'GB':
header('Location: http://www.domain.com/links/greatbritain.php');
exit;
case 'IE':
header('Location: http://www.domain.com/links/ireland.php');
exit;
case 'AU':
header('Location: http://www.domain.com/links/australia.php');
exit;
case 'NZ':
header('Location: http://www.domain.com/links/newzealand.php');
exit;
default: // exceptions
header('Location: http://www.domain.com/links/allelse.php');
exit;
}
?>

更多信息和支持插件下载:

http://www.trafficplusconversion.com/251/redirect-based-on-country/

这是JavaScript选项。

http://www.geobytes.com/GeoDirection.htm