zoukankan      html  css  js  c++  java
  • IP计算

    Now that we've got the database, we will move on to writing the ASP code.

    Firstly, we must know how to get the IP Address of the Visitor. To do that, our code will be

    <%
    strIP = Request.ServerVariables("HTTP_REMOTE_ADDR")
    %>

    The ServerVariables collection contains the combination of values that represent the HTTP headers sent from the visitor's browser to our server. By passing the "HTTP_REMOTE_ADDR" parameter to it, we request the IP Address of the visitor.
    Through this, we will get an IP Address in the format xxx.xxx.xxx.xxx which may look like 108.89.128.147
    But since our database have IP Numbers instead of IP Addresses, we will have to convert the IP Address into an IP Number.
    To convert an IP Address into an IP Number, the formula is
    A * (256*256*256) + B * (256*256) + C * 256 + D
    for the IP Address A.B.C.D
    So, for ease of things, we can use the following function to get an IP Number of an IP Address.

    <%
    Private Function ipAd2ipNum(ipA)
    strO = ipA
    pos1 = InStr(strO, ".")
    intA = CInt(Left(strO, (pos1-1)))
    strO2 = Mid(strO, pos1+1, len(strO))
    pos2 = InStr(strO2, ".")
    intB = CInt(Left(strO2, (pos2-1)))
    strO3 = Mid(strO2, pos2+1, len(strO2))
    pos3 = InStr(strO3, ".")
    intC = CInt(Left(strO3, (pos3-1)))
    intD = CInt(Mid(strO3, pos3+1, len(strO3)))

    intConvert = (intA*(256*256*256)) + (intB*(256*256)) + (intC*256) + intD
    ipAd2ipNum = Trim(intConvert)
    End Function
    %>


    so, we can use this function as

    <%
    strIP = Request.ServerVariables("HTTP_REMOTE_ADDR")
    strIPN = ipAd2ipNum(strIP)
    %>

    Thus we will get the IP Number of our IP Address. Now we are ready to query our ip2country database.
  • 相关阅读:
    如何将一个类改造为线程安全
    50行代码实现缓存,JAVA内存模型原理
    Qt 解压/压缩文件
    QT学习笔记—1
    在http编程的门口飞牛网自动下单,查单
    QList 排序
    Qt 打开指定的文件
    spoj 375 query on a tree 题解
    uva 11388 GCD LCM题解
    uva 1476 Error Curves 题解
  • 原文地址:https://www.cnblogs.com/Silver/p/170141.html
Copyright © 2011-2022 走看看