根据ip判断地区并不难,首先,咱去下个纯真ip数据库,我用的是qq ip数据库,解压后是个exe程序,然后点击它,然后点击解压,选择要解压到的地方,点确定,就有解压一个txt文件了,用editplus打开一看,是这种形式:58.47.56.230    58.47.56.230    湖南省常德市 和记环球电讯有限公司;然后需要做的是把58.47.56.230    转换成数字,58*256*256*256+47*256*256+56*256+230=结果,把这个结果保存到数据库中,把他们都转换成数字就成功了一半了,(我是写了个程序转换后插入到另一张表里了,我的有40多万条记录,执行了好长时间的,具体多长,我也不知道,我是下班了让它开始执行的,然后就回家了),然后需要有一个各省市地区的表,把各省市的id和你做的ip库的记录一一对上去,然后就ok了,具体怎样对,我是还是做了个程序一一比对的,我想应该用存储过程也能实现把,因为我对存储过程不熟悉。其实我也是个菜鸟,在这给大家分享一下,我也是想赚分的,更想被评为精华帖,呵呵。

解决方案 »

  1.   

    差点忘了,怎样用了,我在这是写给菜鸟看的,老鸟绕行哦,获取客户端的ip后,运算方法和上面的一样,然后用>= 并且<=查数据库看他是属于哪个地区的
      

  2.   

    58.47.56.230 湖南省常德市 和记环球电讯有限公司建立一个表,表中5个字段,(58,47,56,230,地址)
    获取当前IP,通过点号分割返回给数组String str[]=new string[4];
    select * from  table where 字段1=str[0] and 字段2=str[1] and 字段3=str[2] and 字段4=str[3]   查询出地址返回