1. 论坛系统升级为Xenforo,欢迎大家测试!
    Dismiss Notice

大哥们,能告诉我这段代码的意思吗?

Discussion in '源码讨论' started by qh_wht, Jul 8, 2006.

  1. qh_wht

    qh_wht New Member

    Joined:
    Jul 8, 2006
    Messages:
    3
    Likes Received:
    0
    <%
    ip="10.192.31.1"
    Function cacuIp(ip)
    On Error Resume Next
    Dim srIp, aIp
    srIp=0
    aIp = Split(ip,".")
    If UBound(aIP)<>3 Then
    cacuIP=0
    Exit Function
    End If
    For i=0 To 3
    srIp=srIp+(CInt(aIP(i))*(256^(3-i)))
    Next
    cacuIp=srIp-1
    If Err Then cacuIp=0
    End Function

    Response.Write cacuIp(IP)
    %>
    本人是个菜鸟,青高手回复详细的解释,谢谢!!!
     
  2. 弋翔网络1

    弋翔网络1 New Member

    Joined:
    Jul 7, 2006
    Messages:
    365
    Likes Received:
    0
    帮顶了。。。
     
  3. 小白

    小白 New Member

    Joined:
    Sep 25, 2005
    Messages:
    1,604
    Likes Received:
    9
    关于IP的自动判断吧?
    以前好象看到过~~

    下面是一个限制用的程序,限制允许的地区访问,不允许使用代理服务器访问:


    <%
    IP = Request.ServerVariables("REMOTE_ADDR")
    Function cacuIp(ip)
    On Error Resume Next
    Dim srIp, aIp
    srIp=0
    aIp = Split(ip,".")
    If UBound(aIP)<>3 Then
    cacuIP=0
    Exit Function
    End If
    For i=0 To 3
    srIp=srIp+(CInt(aIP(i))*(256^(3-i)))
    Next
    cacuIp=srIp-1
    If Err Then cacuIp=0
    End Function
    Set CONN=Server.CreateObject("ADODB.Connection")
    CONN.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.Mappath("ip.mdb")
    iIp=cacuIp(IP)
    SQL = "SELECT country,city FROM IP_SoftYes WHERE ip1<=" & iIp & " AND ip2>=" & iIp
    Set rs = CONN.Execute ( SQL )
    If rs.Eof Then
    sPlace="查无记录"
    Else
    sPlace=rs(0)&" "&rs(1)
    End If
    Set rs=Nothing
    If not((InStr(sPlace,"北京")<>0) or (InStr(sPlace,"上海")<>0)) Then
    Response.Write "错误的物理地址,你将不能访问。"
    Response.End
    End If
    Set CONN=Nothing
    If Request.ServerVariables("HTTP_X_FORWARDED_FOR")<>"" Then
    Response.Write "本页不允许使用代理服务器访问。"
    Response.End
    End If
    %>

    另外需要一个IP数据库在同目录下支持。这个程序可以直接被include到其他程序内被使用。
     
  4. qh_wht

    qh_wht New Member

    Joined:
    Jul 8, 2006
    Messages:
    3
    Likes Received:
    0
    谢谢楼上帮顶和发贴的兄弟,不过小弟还是不明白代码的意思呀,高手请指点

    呵呵