根据IP跳转到用户所在城市的实现步骤


  本文标签:IP,跳转

先去下一个最新的 纯洁IP数据库, 而后按如下操作:
1.运行 纯洁QQIP数据库里带的ShowIP.exe,点解压,输入文件名, 比方IP.txt,确定,就得到一个TXT文件 。
2. 打开ACCESS,工具-自定义,命令选项卡,把导入选项拖动到上面的工具栏 。
3.建库,建一个表,四个字段
Startip 类型:文本 ( 有关城市的IP段信息)
Endip 类型:文本 ( 有关城市的IP段信息)
Country 类型:文本 ( 有关城市名称)
ReUrl 类型:文本 (你想要跳转的城市路径如:北京 http://bj.abc.com)
4.点导入按钮,文件类型选文本文件,找到 方才导出的IP.txt文件,导入到 方才建的表里'
运算将 实在IP转换为数字, 比方北京的IP段是 : 1.1.0.0 -- 1.1.0.255
Startip: 1*256*256*256+1*256*256+0*256+0 = 16842752 (这个数字才是最后要放到数据库里)
Endip: 1*256*256*256+1*256*256+0*256+255 = 16843007 (这个数字才是最后要放到数据库里的)
可用程序批量 解决,假如不会,并且没 工夫(像我一样)你就直接去下个动网的IP库,它是已经 解决好了的,下面是程序 部分:
user_ip = Request.ServerVariables("REMOTE_ADDR") 获得 拜访者IP
userip_ary=split(user_ip,".")
tmp_userip=userip_ary(0)*256*256*256+userip_ary(1)*256*256+userip_ary(2)*256+userip_ary(3) 按规定转换IP为数字
‘从数据库找出消费者IP属于的城市
set rs=Server.CreateObject("ADODB.Recordset")
sql="select * from ip where Startip<="&tmp_userip&" and Endip>="&tmp_userip
rs.open sql,conn,1,1
if rs.eof then
response.redirect "index.asp" 假如没有该城市或是IP 无奈 鉴别则转到首页,也 可以指定页面
else
response.redirect rs("ReUrl") 假如有转到指定页面
end if
rs.close
set rs=nothing
将上面的程序放到你的 虚构主机默许 拜访首页里!或是其它的页面里(固然你同样要在 虚构主机操纵面板里设置默许首先 拜访的是这个文件) OK