萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> 根據IP跳轉到用戶所在城市的實現步驟

根據IP跳轉到用戶所在城市的實現步驟

   根據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

        :更多精彩教程請關注三聯設計教程 欄目,

copyright © 萬盛學電腦網 all rights reserved