对联 ·故事 ·史海钩沉 ·人物档案 ·地方风俗 ·谚语大全 ·讽刺与幽默 · 赚钱 · 法律 · 在线教研 · 会员中心 · 心理测试 · 魔鬼词典 · 顺口溜
 
主页特效 网页特效 百家姓
娱乐 歇后语 绕口令 脑筋急转弯
 
谚语 谜语 名言 邮政编码
便民 酒方 验方 偏方 站长工具  
 
算命 风俗 手相 爱情
女孩 音乐 面相 星座 血型
 
饮食 穴道 偏方 医药
生活 软件 硬件 解梦 高考



   JS特效



实用工具
便民服务 加密解密
 
魅力高密 民间故事 Flash教程 PS教程 最新国内新闻
新华字典 黄道吉日 英语园地  万年历 Html2anycode
  首页 | 美图 | 短信 | 安全 | 校园 | 网站 | 游戏 | UFO | 文秘 | 生活 | 信息技术 | 论文 | 人生 | 情感 | 日记
返回首页
当前位置: 主页 > 网站建设 >

QQWry.dat导入Mysql显IP程序

时间:2010-12-28 14:07来源:www.panpan.org 作者:花生 点击:
QQWry.dat导入Mysql显IP程序 刚刚学PHP,以前是ASP玩着转到PHP,在ASP时也研究过纯真的IP数据转到MDB里再显示出地址!这几天学得差不多就想着用PHP也来根据IP显示地址! 大家狠狠的批评吧! 好了
  

QQWry.dat导入Mysql显IP程序

刚刚学PHP,以前是ASP玩着转到PHP,在ASP时也研究过纯真的IP数据转到MDB里再显示出地址!这几天学得差不多就想着用PHP也来根据IP显示地址!

大家狠狠的批评吧!

好了,跟着下面步骤做:Let's go!!!!

一、去www.CZ88.net下载最新的纯真IP数据库!然后用自带的程序解压出TXT来。

二、把解压出来的TXT放去站点目录(随便你自己站点下的目录,如我的是d:\server\wwwroot\php)先用EP,因为我用的是UTF8(原TXT编码是ANSI),所以用EP打开另存为UTF8编码,如下图:


三、然后进入phpMyAdmin 创建一个数据库和表,这里有个注意的地方就是也要用UTF8(呵呵,国际化点)

创建库:ipdb


创建ip表时的SQL语句:
CREATE TABLE `ip` ( `id` int(11) unsigned NOT NULL auto_increment,`ip1` int(10) unsigned NOT NULL default '0', `ip2`   int(10) unsigned NOT NULL default '0',`address` varchar(255) NOT NULL default '',PRIMARY KEY (`id`)) TYPE=MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci;

(呵呵,第一次发贴,不知道上面那段SQL会不会被屏蔽一些字符)


四、现在可以用PHP先转TXT的IP地址为十进制数代码如下:

<?php
  set_time_limit(0); //设置脚本运行时间,参数0为无限时
  $fd = fopen("D:\SERVER\wwwroot\PHP\ip.txt", "r");   //以只读方式打开文件,并将指针指向文件头,注意要实际路径
  $temp_filename = tempnam("/tmp", "ip_");   //在临时目录中创建一个以IP_开头的文件
  $fd2 = fopen("$temp_filename", "w");   //写入方式打开,将文件指针指向文件头并将文件大小截为零,文件没有就尝试创建
  $id = 0;  
  while(!feof($fd)){   //测试文件指针是否到了文件结束的位置
  $id++;  //库表中的id字段增1
  $linestr = fgets($fd, 4096);   //从文件指针中读取一行
  if(!trim($linestr)) break;   //修剪两边多余空格等
  $ip1_str = trim(substr($linestr,0,15));   //返回所需的字符串
  $ip2_str = trim(substr($linestr,16,15));  
  $address_str = trim(substr($linestr,32));  
   //以下是将ip1转为十进制数
  $ip_arr = explode(".",$ip1_str);   // 使用一个字符串分割另一个字符串以.来区分
  $ip1_str = 0;  //初始化
  foreach($ip_arr as $i=>$s){  
  $ip1_str += $s*pow(256,3-$i);  //幂次方函数
  }  
  //以下是将ip2转为十进制数
  $ip_arr = explode(".",$ip2_str);  

顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
赞助商位置
推荐内容
杂七杂八