下载帝国网站管理系统5.0正式版
 帝国论坛技术交流区网络编程[原创]IP地区自动跳转..技术交流..请大家多多指点
帝国CMS5.0正式版发布
中客:空间产品随时可无条件退款!
测试:生成20万数据共用107分钟
《帝国下载系统》全面免费
Mysql大数据备份工具下载
帝国软件旗下新站 - 站长工具
1G双线帝国空间+200M数据库=158
帝国CMS教程下载
主题:[原创]IP地区自动跳转..技术交流..请大家多多指点 [加入收藏夹]   

suenyali
用户头衔:书生

精华贴   :0
发贴数   :17
经验值   :82
注册时间:2006-08-08
信息 搜索 好友 发送悄悄话 《帝国网站管理系统》基础教程下载】   [第 1 楼]
[原创]IP地区自动跳转..技术交流..请大家多多指点
1、基本原理:
即访问首页时首先通过Request.ServerVariables("REMOTE_ADDR")或Request.ServerVariables("HTTP_X_FORWARDED_FOR")获得访问者所在地的IP地址,然后通过以下函数把IP地址转换成长整型:
Function CLngIP(ByVal asNewIP)
Dim lnResults
Dim lnIndex
Dim lnIpAry
lnIpAry = Split(asNewIP, ".", 4)
For lnIndex = 0 To 3
If Not lnIndex = 3 Then
lnIpAry(lnIndex) = lnIpAry(lnIndex) * (256 ^ (3 - lnIndex))
End If
lnResults = lnResults + lnIpAry(lnIndex)
Next
CLngIP = lnResults
End Function
然后通过与IP库中的IP长整型值大小对比,是否在某个IP段内,然后读出对应的URL值或CityID值,这时即获得了该地区对应的目录或CityID值,然后通过程序让其跳转到此目录或CityID值即完成自动跳转功能。

2、IP库来源:
IP库取自纯真060610版,共计26万余IP记录,除去国外IP记录,国内(包括港澳台共21万条记录)。每个省市区默认设置好了对应的目录,除香港以全拼命外其它是以各省市区省会名拼音第一个字母命名,默认CityID均为零,即没有启用CityID自动跳转。为减小库的体积删去了country、city字段。

3、#IP.mdb库默认支持的跳转区域:
目前共包括,4个直辖市,27个省及港台三二地区的IP自动跳转。
为方便大家设置区域的IP跳转,另外提供的库IP_bak.mdb文件中包括按省、直辖市级分好的表,包括4个直辖市,27个省及港台三二地区。若要更改相应目录名或CityID等更改设置可通过以下提供的方法进行设置后,将各表合并为xin35_IP一个表,删除其它表即可。为减小库的体积,设置完后,建议删除country、city字段。



这种方式大家觉得有什么补充的嘛..?多多交流




2007-01-17 10:34:20 已设置保密 顶部 回复 引用 报告 编辑 删除

wm_chief
用户头衔:管理员

精华贴   :21
发贴数   :47587
经验值   :108259
注册时间:2002-10-30
信息 搜索 好友 发送悄悄话 《帝国网站管理系统》零基础实例入门教程】   [第 2 楼]

嗯,这个可以了,主要是ip库问题



[零基础入门教程] [模板制作教程] [采集使用教程]
官方使用交流群:12261591
2007-01-17 11:01:57 已设置保密 顶部 回复 引用 报告 编辑 删除


快速回复
内容

使用EBB代码
使用smile代码
显示签名
自动分析url
自动分析img
表情                   
                
    (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1