前言
大家应该都有所体会,如果是做大型项目的话,网站获取用户的本地信息就很关键了,比如58分类信息网,在用户访问的时候会自己判断用户所在地的信息,然后可以跳转到相应的分站上面,这样给用户的体验很好,而不是全国各地的用户全部都来访问北京站或者上海站。
利用PHP获取访客所在地位置在大型站点中的应用很广,当然,除了这个应用之外,还可以举一反三出许多好玩的东西,今天就在做一个小项目的时候,用到了,在站点不同地区显示不同内容的小功能,其实跟上面的实例差不多。
实现分析
制作这样的一个小功能,当然首先就要考虑使用第三方的IP接口,目前,大一点的IP接口有淘宝,新浪,网易,QQ等,最终选择了新浪IP归属地的API,使用上面也很简单,利用获取到的IP地址,使用新浪接口,返回一个状态码,然后根据状态码获取用户所在地的位置,然后再进行各个地区显示不同内容的判断。
PHP的代码如下:
<?php $ip = "218.192.3.42"; $json = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip); $json = json_decode($json, true); echo "IP地址:".$ip;//xiariboke.com echo "归属地:".$json["country"].$json["province"].$json["city"].$json["district"].$json["isp"]; ?>
JS代码如下:
<script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js" charset="utf-8"></script> <script type="text/javascript"> alert(remote_ip_info.country+" "+remote_ip_info.city); </script>
我们主要用到的是PHP的代码,这里的IP地址是固定的,如果想要获取访客的IP地址,直接更改为 $ip = $_SERVER["REMOTE_ADDR"]; 就可以了
下面再贴一段根据地区显示不同内容的PHP代码,如下:
<?php $ip = $_SERVER["REMOTE_ADDR"]; $json = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip); $json = json_decode($json, true); if($json["province"]=="河北"){ echo "document.writeln(\"河北");\n"; }//xiariboke.com if($json["province"]=="河南"){ echo "document.writeln(\"河南");\n"; } ?>
这段代码没怎么整理与优化,在输出的时候,我这里输出了JS,这里可以更改为任何内容,甚至是跳转网址,另外,如果想要在静态页面中使用的话,也很简单,只要JS包含就可以了,代码如下:
<script type="text/javascript" src="ip.php?action=test"></script>
action 是传递的参数,如果没有用的话,可以删除掉。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
本文向大家介绍利用PHP获取访客IP、地区位置、浏览器及来源页面等信息,包括了利用PHP获取访客IP、地区位置、浏览器及来源页面等信息的使用技巧和注意事项,需要的朋友参考一下 前言 本文中主要介绍了关于利用PHP获取访客IP、地区位置、浏览器及来源页面等信息的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 不多说了,每个方法都注释了,可以直接用: 示例代码 总结 以上就是这篇文章的全
本文向大家介绍PHP获取当前所在目录位置的方法,包括了PHP获取当前所在目录位置的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP获取当前所在目录位置的方法。分享给大家供大家参考。具体分析如下: 如果要获取脚本文件的目录,要应用函数getcwd()来实现。函数声明如下: string getcwd ( void ) ; 成功执行后返回当前目录字符串,失败返回FALSE。 示例如下
问题内容: 我想获取使用我网站的客户IP地址。我正在使用PHP superglobal: 但是我看到它不能使用此提供正确的IP地址。我得到了我的IP地址,发现它与我的IP地址不同,并且我还可以在某些网站上看到我的IP地址,例如: 我粘贴了提供PHP功能的IP地址,但是此网站未显示任何结果。这个问题是怎么发生的,如何获得客户端的IP地址? 问题答案: 获取访问者/客户的IP地址的最简单方法是使用或变
问题内容: 我想使用Java来获取网站的源(安全),然后解析该网站以获取其中的链接。我已经找到了如何连接到该URL的方法,但是然后我如何才能轻松地仅获取源代码,更喜欢作为DOM Document oso来获取我想要的信息。 还是有更好的方法连接到https站点,获取源代码(我很容易做到以获取数据表…非常简单),然后这些链接就是我要下载的文件。 我希望它是FTP,但是这些是存储在我的Tivo中的文件
本文向大家介绍PHP巧妙利用位运算实现网站权限管理的方法,包括了PHP巧妙利用位运算实现网站权限管理的方法的使用技巧和注意事项,需要的朋友参考一下 首先我们先定义4个常量来设定四种权限: ===================================== define(ADD,1);//增加数据库记录的权限 define(UPD,2);//修改数据库记录的权限 define(SEL,4);