为php文件建立ip地址,IP地址查询网站的建立(基于qqwry数据库建立)
一、需要的工具: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数据库建立)相关推荐
- 远程访问,文件的压缩,ip地址的设置(9,11,12unit)
第九单元--远程访问 1.什么是openssh 是一个提供远程访问控制的软件 2.如何实现远程访问 ssh 远程主机用户@远程主机ip地址 ssh root@172.25.254.1 The auth ...
- IP地址信息文件没有找到,IP显示功能将无法使用,错误的IP数据库文件 留下了没有技术的泪水~
如果不能并肩同行,那就假装恰好路过. 在解析IP地址的时候,遇到这样一个报错: IP地址信息文件没有找到,IP显示功能将无法使用 错误的IP数据库文件 错误的IP数据库文件 完整报错如下: 可以看到我 ...
- 怎么查询局域网内全部电脑IP和mac地址..
在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢??? 工具/原料 Windows ...
- 查看IP和MAC地址的命令
[基于MS]查看MAC地址命令: 1.使用ipconfig /all,可以看到具体配置. (查看IP地址,网关,DNS MAC地址等 ) 2.如果和局域网中的其它计算机通信过的话,可以用arp -a命 ...
- 什么是IP地址 IP地址的工作原理
IP 地址的工作原理 如果您想了解特定设备为何未按预期方式进行连接,或者想要排查网络无法正常工作的可能原因,它可以帮助您了解 IP 地址的工作原理. 互联网协议的工作原理与任何其他语言相同,即使用设定 ...
- 怎么查询局域网内全部电脑IP和mac地址等信息?
在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢???或者用命令 :arp -a ...
- 如何在局域网查看IP与MAC地址
方法二 查看本机IP--命令查看 点击屏幕左下角任务栏左边的"开始"菜单,选择"运行"命令: 在弹出"的运行"对话框的文本输入框中直接输入& ...
- uniapp通过ip获取其地址、经纬度、详细地址:
1.方法: 查看ip内容:http://pv.sohu.com/cityjson?ie=utf-8 [1]js获取ip地址: <script src="http://pv.sohu.c ...
- mac中如何查看工作组计算机名,如何查询局域网内全部电脑IP和mac地址
你知道局域网内全部电脑IP和mac地址吗,那么该如何查询局域网内全部电脑IP和mac地址呢下面是学习啦小编收集整理的如何查询局域网内全部电脑IP和mac地址,希望对大家有帮助~~ 查询局域网内全部电脑 ...
最新文章
- 003:Virtualenvwrapper使用
- C#连接ORACLE数据库乱码问题
- Skype for Business Server 2015-10-ADFS-2-配置
- Python教程:shift函数实现数据偏移的方法
- WebApi接口 - 响应输出xml和json 转
- 集群部署中解决定时任务重复执行的问题-redis分布式锁应用
- C++学习之路 | PTA乙级—— 1031 查验身份证 (15 分)(精简)
- Android 如何让EditText不自动获取焦点
- cent os mysql图形界面_cent os 6.4安装使用mysql
- 均衡器算法_必须像算法一样对算法进行仔细调整。 怎么样? 算法均衡器
- kmz转换为dwg_甲方发来PDF图纸,你还得重新CAD绘制?教你30秒PDF转DWG
- Python自动发抖音脚本教程(1:介绍和源码)
- 如何解决--Mac的磁盘工具无法对移动硬盘分区,分区按钮是灰色的?
- excel合并两列内容_办公实用Execl表格中按这个键可以快速合并两列单元格内容...
- phonegap3.5了结
- 谷歌浏览器下载速度很慢,怎么解决?
- 家庭数据中心-私有云服务器定义和选择
- ScheduledExecutorService:多线程任务调度
- 《安富莱嵌入式周报》第285期:电子技术更新换代太快,我要躺平,Linux内核6.1已经并入RUST,一夜161个网站密码遭泄,Matlab精选课件,开源电子书
- 详解注意力机制和Transformer