留言本IP或IP段限制与限制留言次数-ASP版

vb 代码
 
  1. <%
  2. '留言板IP限制程序
  3. dim ips
  4. ips = left(Request.ServerVariables("REMOTE_ADDR"),15)
  5. response.write ips
  6.  
  7. IpLists = "127.0.|"
  8.  
  9. function isForbid(sip)
  10.  dim Iplist,Iparr,Ipi
  11.  Iplist = "|"& IpLists "|" '
  12.  Iparr = split(Iplist,"|"'生成数组
  13.  for Ipi = 0 to ubound(Iparr) '循环查找数组IP
  14.   if len(Iparr(Ipi)) > 0 and instr("|" & sip,"|" & Iparr(Ipi)) > 0 then
  15.    isForbid = true
  16.    exit function
  17.   end if
  18.  next
  19.  isForbid = false
  20. end function
  21.  
  22. if isForbid(ips) then
  23.  Response.write "<p align=""center"">你没有留言的权限</p>"
  24. else
  25.  response.write "aaaaaaaaaa"
  26. end if
  27.  
  28.  
  29. '验证两次留言时间间隔 方法 01
  30. 'PostIntervalTime = 5*60 '同一个IP多长时间可以留一次言,单位是秒,5分钟可以用5*60表示,不限制请设置为0
  31. PostIntervalTime = 1*60
  32.  
  33.  if int(PostIntervalTime) > 0 then
  34.   newDate = Dateadd("s",int(PostIntervalTime)*-1,Now)
  35.   Set rs = conn.execute("select top 1 ip from qwbmbook where ip = '"& fixsql(ip) "' and time > #"& newDate "#")
  36.   if not (rs.eof and rs.bof) then
  37.    set rs = nothing
  38.    conn.close
  39.    set conn = nothing
  40.    'er "请不要频繁留言,请等分钟"& int(PostIntervalTime/60) &"留言!",""
  41.   end if
  42.   set rs = nothing
  43.  end if
  44. %>