仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1542|回复: 18
打印 上一主题 下一主题

[学习教程] PHP教程之利用MaxMind 依据IP地址对会见者定位

[复制链接]
若相依 该用户已被删除
跳转到指定楼层
#
发表于 2015-2-4 00:07:25 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
《PHP+MYSQL WEB开发(第三版)》号称圣经级,(也许是个不错的选择(声明:作者没给我啥好处费,我也不是书托,隔着大老远,我连他老兄的面都没见过的说-_-)   有时你需求晓得你的站点会见者来自哪一个国度――好比假如你正盘算履行针对地舆区域的告白企图。本文将对此办法停止引见。    有时你需求晓得你的站点会见者来自哪一个国度――好比假如你正盘算履行针对地舆区域的告白企图。这恰是象MaxMind's GeoIP一类的东西大显神通的中央――它可让你从会见者的IP地址轻松获得其切实的地舆地位信息。
    MaxMind供应了贸易数据库和收费数据库。前者更加准确,精度可以达利用者地点城市信息一级,尔后者则只能肯定国度和区域。在本文中,咱们将演示收费版的利用办法。假如你需求更多具体信息,好比近程客户的城市和国度信息,你需求从MaxMind:http://www.maxmind.com购置更具体的数据库。
    起步
    要利用此软件,你必需起首下载GeoIP收费国度信息文件:http://www.maxmind.com/app/geoip_country 并将其寄存于Web办事器的某个目次中。然后你需求选择数据库文件所利用的言语API。为简化全部进程,咱们将利用地道的PHP版本以免其他额定的设置装备摆设或设置Apache组件。请记住在装置软件到Web站点前浏览软件允许证条目:http://www.maxmind.com/download/geoip/database/LICENSE.txt以确保你赞同这些条目。
代码列表A
<?php
// include functions
include("geoip.inc");
// read GeoIP database
$handle = geoip_open("GeoIP.dat", GEOIP_STANDARD);
// map IP to country
echo "IP address 62.149.130.132 located in " . geoip_country_name_by_addr($handle, "62.149.130.132") . " (country code " . geoip_country_code_by_addr($handle, "62.149.130.132") . ")";
// close database handler
// www.knowsky.com
geoip_close($handle);
// print compulsory license notice
echo "<p> -- This product includes GeoIP data created by MaxMind, available from http://maxmind.com/ --";
?>
列表A中的代码显示了利用模块(geoip.inc)以会见GeoIP收费国度信息数据库(GeoIP.dat)的根基办法。示例假定PHP include和国度家信息数据库文件都在与PHP文件自己不异的目次中。假如示例与你的装置分歧,则需求依据需求改动途径。
示例代码相当了然,在引入GeoIP PHP函数库后,第一步即便用geoip_open()函数翻开GeoIP数据库文件。此函数吸收两个参数:数据库文件途径和数据库类型。
咱们然后利用由挪用geoip_open()前往的句柄,由此依据所给的IP地址以获得两字母的国度代码及直不雅的国度称号。个中还要分离借助函数geoip_country_code_by_addr()和geoip_country_code_by_name()。两者都吸收两个参数:由geoip_open()前往的句柄和需求解析的IP地址。
一旦取得所需信息,咱们经由过程挪用geoip_close()封闭数据库文件。
所做的就是这么复杂。
到现在,对排版还是不很熟练,经常会排不好。
爱飞 该用户已被删除
18#
发表于 2015-7-25 01:38:11 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
只想知道 该用户已被删除
17#
发表于 2015-7-14 02:35:25 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
16#
发表于 2015-7-13 19:21:52 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
柔情似水 该用户已被删除
15#
发表于 2015-7-13 06:21:42 | 只看该作者
做为1门年轻的语言,php一直很努力。
透明 该用户已被删除
14#
发表于 2015-7-12 07:25:32 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
再见西城 该用户已被删除
13#
发表于 2015-6-19 17:51:07 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
精灵巫婆 该用户已被删除
12#
发表于 2015-5-6 20:12:12 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
飘灵儿 该用户已被删除
11#
发表于 2015-4-30 21:42:37 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
小女巫 该用户已被删除
10#
发表于 2015-4-7 01:15:13 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
愤怒的大鸟 该用户已被删除
9#
发表于 2015-4-1 01:36:15 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
飘飘悠悠 该用户已被删除
8#
发表于 2015-3-20 02:53:50 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
再现理想 该用户已被删除
7#
发表于 2015-3-16 00:12:06 | 只看该作者
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
活着的死人 该用户已被删除
6#
发表于 2015-3-8 14:02:02 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
谁可相欹 该用户已被删除
5#
发表于 2015-2-26 11:14:50 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
深爱那片海 该用户已被删除
地板
发表于 2015-2-8 21:43:51 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
兰色精灵 该用户已被删除
板凳
发表于 2015-2-6 22:06:13 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
莫相离 该用户已被删除
沙发
发表于 2015-2-4 11:26:28 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
乐观 该用户已被删除
楼主
发表于 2015-2-4 08:59:44 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 21:27

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表