求限制IP一段时间哪访问代码 asp的~

来源:百度知道 编辑:UC知道 时间:2024/05/16 05:37:55
最近偶的动态导航站老是被别人刷流量(刷一次啊的站点就靠最前),已经快把偶刷哭了..偶是一只菜鸟.-_-实在不会写代码.唯有在这里向大家求救了...
偶的思路是这个.想建个数据库记录来访者的IP.和第一次访问时间.
然后在这一段时间里该IP访问N次都只算一次.
例如.有IP访问站点.那么查询数据库中有没有该IP.
假如有就跳转页面
假如没有就记录该IP.并把数据库里第一次访问时间以满12小时的IP记录删除...
不知道这样行不行..偶实在不会写代码.-_-....全部分奉献了..虽然不多....但希望大家帮帮偶.

好了 代码写好了
你在你数据库里面新建立一个数据表,数据表里面有3列
表名:ip_user
表列1名称:编号 类型:自动编号
表列2名称:IP地址 类型:字符 长度 15以上
表列3名称:访问时间 类型:日期时间 默认值:now()

新建立一个ASP文件 把 以下代码复制进去

<%
ip=request.ServerVariables("REMOTE_ADDR") '获取来访的IP地址

dim conn
set conn=server.CreateObject("ADODB.connection")
conn.open "Dbq="&server.MapPath("yb/dat/data.mdb")&";Driver={Microsoft Access Driver (*.mdb)}" '建立数据库连接 这里你可以自己改

sql="select * from ip_user where ip地址='"&ip&"'"
set rs=server.CreateObject("ADODB.recordset")
rs.open sql,conn,3,3
if rs.eof then
call ip_fir("thenew")
else
vistime=rs("访问时间")
if DateDiff("h",vistime,now)>=12 then
call ip_fir("theup")
else
call ip_notfir
end if
end if
%>

<%'------