分享编程~
 

最新PHP和JS获取访客真实IP及所在地区

最新PHP和JS获取访客真实IP和访客所在省市区方法…

天天特卖抢好货

php只有通过内置函数获得ip却不能获得地区地址,只能通过其他第三方的接口。之前用php获取访客IP,根据访客IP调用新浪和淘宝的接口来获取访客所在地区,后来发现新浪和淘宝的接口都关闭了,大部分免费的接口都不能用了,只能花钱购买。现在分享一个免费的获得访客ip和地区的接口,搜狐的,但是是js方式的,具体用法如下:

第一步、在页面上直接引用搜狐的js:

<script type="text/javascript" src="//pv.sohu.com/cityjson?ie=utf-8"></script>

第二步、引用搜狐的js后会获得json数据returnCitySN变量进行获取里边的IP和访客所在地区即可,返回的数据如下:

var returnCitySN = {"cip": "116.235.177.18", "cid": "310109", "cname": "上海市虹口区"};

通过returnCitySN.cip或者returnCitySN['cip']获取IP地址,通过该形式获取其他参数如cname为地区,获得参数后然后通过ajax回传到后台。

var ip = returnCitySN.cip;

var area = returnCitySN.cname;

扩展:PHP获取访客真实IP方法如下

function getIP(){
        if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) {
            $ip = getenv("HTTP_CLIENT_IP");
        } else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) {
            $ip = getenv("HTTP_X_FORWARDED_FOR");
        } else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) {
            $ip = getenv("REMOTE_ADDR");
        } else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
            $ip = $_SERVER['REMOTE_ADDR'];
        } else {
            $ip = "unknown";
        }
        return ($ip);
    }


上一篇:浏览器上网助手国内访问谷歌网站方法下一篇:PHP判断是手机移动端还是电脑PC端方法
赞(4) 踩(2)
您说多少就多少,您的支持是我最大的动力
赏金
微 信
赏金
支付宝
本文连接: https://www.yj521.com/article/60.html
版权声明: 本文为原创文章,版权归《越加网》所有,分享转载请注明出处!