程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> 根據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

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

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved