一、需要的工具:QQWry最新版(ip地址数据库)

二、数据库的导入

1、下载qqwry后导出txt格式的数据库,命名为ip.txt

2、在mysql数据库中建立名为ipdb的数据库

3、在ipdb数据库中建立表ip,sql语句如下

CREATE TABLE `ip` ( `id` int(11) unsigned NOT NULL auto_increment,`ip_begin` int(10) unsigned NOT NULL default '0', `ip_end` int(10) unsigned NOT NULL default '0',`address` varchar(255) NOT NULL default '',`place` varchar(255) default '',PRIMARY KEY (`id`))TYPE=MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci;

4、运行数据库导入PHP脚本

将ip.txt文件和下边的脚本放同一目录下,然后运行脚本

header('Content-Type:text/html;charset=gb2312');

set_time_limit(100);//因为数据库很大,所以脚本运行时间设为100秒

$file1="ip.txt";//打开导出的数据库文本文件

$handle1=fopen($file1,'rb+');

$con=@mysql_connect("localhost","root","ssklzs") or die("数据库连接出错");

mysql_select_db("ipdb");

while($row=fgets($handle1))

{

$arr=explode(" ",$row);//处理文本问价

$cal=0;

$flag=0;

foreach($arr as $num=>$value)

{

if($value!=""&&$cal<3)

{

$information[]=$value;

unset($arr[$num]);

$cal++;

}

elseif($value!="")

{

$tmp[]=$value;

$flag=1;

}

elseif($cal>=3&&$flag==1)

{

$tmp[]=$value;

}

else{}

}

if($flag==1) $information[3]=implode(" ",$tmp);

unset($tmp);

///分解X.X.X.X的ip地址为整数格式

$ip_arr = explode(".",$information[0]);

$ipnum = 0;

//初始化

foreach($ip_arr as $i=>$s)

{ $ipnum += $s*pow(256,3-$i); }

$information[0]=$ipnum;

$ip_arr = explode(".",$information[1]);

$ipnum = 0;

//初始化

foreach($ip_arr as $i=>$s)

{ $ipnum += $s*pow(256,3-$i); }

$information[1]=$ipnum;

//

$information[3]=str_replace("'","/'",$information[3]);//处理地址中可能含有的'符号

$sql="insert into ip "//执行插入语句

."(ip_begin,ip_end,address,place) values ('$information[0]','$information[1]','$information[2]','$information[3]')";

mysql_query($sql);

unset($information);

}

fclose($handle1);

?>

这样整个ip数据库便导入到了mysql中

三、建立查询页面

index.php脚本如下:

IP地址查询 Made by Erebus

请输入要查询的ip地址

(ip数据库更新日期:2010年05月05日)

db_connect.php脚本如下:

$connect=mysql_connect("localhost","root","ssklzs") or die("数据库连接出错");

mysql_select_db("ipdb");

?>

show_result.php脚本如下:

IP查询结果

/*

* Created on 2010-6-10

*

* To change the template for this generated file go to

* Window - Preferences - PHPeclipse - PHP - Code Templates

*/

include("db_connect.php");

$ip=$_POST['search'];

//ip正则表达式

$pattern="//A((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))/.){3}(([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))/Z/";

if(preg_match($pattern,$ip)&&$ip!="")

{

$ip_arr = explode(".",$ip);

$ipnum = 0;

//初始化

foreach($ip_arr as $i=>$s)

{ $ipnum += $s*pow(256,3-$i); }

$sql="select * from ip where ip_begin <= $ipnum and ip_end >= $ipnum";

$result=mysql_query($sql);

while($row=mysql_fetch_array($result))

{

//print_r($row);

echo "

$row[3]

";

echo "

$row[4]

";

echo "

重新查询

";

}

}

else echo "输入的ip不合法,请重新输入";

?>

完毕!

欢迎访问!!

为php文件建立ip地址,IP地址查询网站的建立(基于qqwry数据库建立)相关推荐

  1. 远程访问,文件的压缩,ip地址的设置(9,11,12unit)

    第九单元--远程访问 1.什么是openssh 是一个提供远程访问控制的软件 2.如何实现远程访问 ssh 远程主机用户@远程主机ip地址 ssh root@172.25.254.1 The auth ...

  2. IP地址信息文件没有找到,IP显示功能将无法使用,错误的IP数据库文件 留下了没有技术的泪水~

    如果不能并肩同行,那就假装恰好路过. 在解析IP地址的时候,遇到这样一个报错: IP地址信息文件没有找到,IP显示功能将无法使用 错误的IP数据库文件 错误的IP数据库文件 完整报错如下: 可以看到我 ...

  3. 怎么查询局域网内全部电脑IP和mac地址..

    在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢??? 工具/原料 Windows ...

  4. 查看IP和MAC地址的命令

    [基于MS]查看MAC地址命令: 1.使用ipconfig /all,可以看到具体配置. (查看IP地址,网关,DNS MAC地址等 ) 2.如果和局域网中的其它计算机通信过的话,可以用arp -a命 ...

  5. 什么是IP地址 IP地址的工作原理

    IP 地址的工作原理 如果您想了解特定设备为何未按预期方式进行连接,或者想要排查网络无法正常工作的可能原因,它可以帮助您了解 IP 地址的工作原理. 互联网协议的工作原理与任何其他语言相同,即使用设定 ...

  6. 怎么查询局域网内全部电脑IP和mac地址等信息?

    在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢???或者用命令 :arp -a   ...

  7. 如何在局域网查看IP与MAC地址

    方法二 查看本机IP--命令查看 点击屏幕左下角任务栏左边的"开始"菜单,选择"运行"命令: 在弹出"的运行"对话框的文本输入框中直接输入& ...

  8. uniapp通过ip获取其地址、经纬度、详细地址:

    1.方法: 查看ip内容:http://pv.sohu.com/cityjson?ie=utf-8 [1]js获取ip地址: <script src="http://pv.sohu.c ...

  9. mac中如何查看工作组计算机名,如何查询局域网内全部电脑IP和mac地址

    你知道局域网内全部电脑IP和mac地址吗,那么该如何查询局域网内全部电脑IP和mac地址呢下面是学习啦小编收集整理的如何查询局域网内全部电脑IP和mac地址,希望对大家有帮助~~ 查询局域网内全部电脑 ...

最新文章

  1. 003:Virtualenvwrapper使用
  2. C#连接ORACLE数据库乱码问题
  3. Skype for Business Server 2015-10-ADFS-2-配置
  4. Python教程:shift函数实现数据偏移的方法
  5. WebApi接口 - 响应输出xml和json 转
  6. 集群部署中解决定时任务重复执行的问题-redis分布式锁应用
  7. C++学习之路 | PTA乙级—— 1031 查验身份证 (15 分)(精简)
  8. Android 如何让EditText不自动获取焦点
  9. cent os mysql图形界面_cent os 6.4安装使用mysql
  10. 均衡器算法_必须像算法一样对算法进行仔细调整。 怎么样? 算法均衡器
  11. kmz转换为dwg_甲方发来PDF图纸,你还得重新CAD绘制?教你30秒PDF转DWG
  12. Python自动发抖音脚本教程(1:介绍和源码)
  13. 如何解决--Mac的磁盘工具无法对移动硬盘分区,分区按钮是灰色的?
  14. excel合并两列内容_办公实用Execl表格中按这个键可以快速合并两列单元格内容...
  15. phonegap3.5了结
  16. 谷歌浏览器下载速度很慢,怎么解决?
  17. 家庭数据中心-私有云服务器定义和选择
  18. ScheduledExecutorService:多线程任务调度
  19. 《安富莱嵌入式周报》第285期:电子技术更新换代太快,我要躺平,Linux内核6.1已经并入RUST,一夜161个网站密码遭泄,Matlab精选课件,开源电子书
  20. 详解注意力机制和Transformer

热门文章

  1. 计算机总线有哪三个部分组成,总线主要由哪三个部分组成
  2. javaweb:eclipse字体大小设置/编码设置
  3. 3月23日,Youtube又掛了。
  4. 图灵奖史上最年轻获奖者高德纳:把一件平常事做到人间极致(转)
  5. 10+31=100小组项目第五周总结报告
  6. 久不使用的rabbitmq突然占用很多CPU居高不下,这个进程beam.smp 一直在跑
  7. JAVA网络编程 【子】
  8. Linux压测工具Stress安装与使用
  9. Android遥控器界面
  10. 字符串(str)相关的4个函数学习分享