关闭顶部展开顶部

asp事件类 asplib-eventProvider.class.asp 用于获取ip等_ASP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:Asp class一个标签引擎类tagEngine.Class
一个用来实现tag功能的asp类,具体的作用,如果您可以读懂的话就可以明白了了。 修改记录: 1,增加扩展函数,2006-12-3 % '****************************** '类名:tagEngine '名称:标签引擎 '日期:2006-11-29 '作者:西楼冷月 '网址:www.xilou.net | www.

作者真是细致,把这些东西都封装成为class了。有点过了,这些东西可以作成过程或者函数来封装,sub和function也是封装,不一定非要class才可以。您的文件库不一定全部都是class,一些sub和funtion都是必要的。

实现的功能包括
1,showInfo(e_title,c_url,e_num,e_des,e_time,opera,ip,reurl):显示错误信息
2,getIP():取得客户IP
3,checkPost():验证是否是站外提交
4,getReferer():来路记录
5,getCurURL():取得当前页面路径
6,isRefresh(s1,s2,maxtimes):防刷新

完整代码:

<%
'******************************
'名称:eventProvider(事件类)
'日期:2006/11/24
'作者:西楼冷月
'网址:www.mb5u.com
'描述:无
'版权:转载请注名出处,作者
'******************************
'最后修改:2006/11/24
'修改次数:0
'修改说明:无
'目前版本:v1.0.0
'******************************
Class eventProvider

Private logDBName'日志表名
'www.mb5u.com 设计家园
'初始化
Private Sub Class_Initialize()
logDBName="LogInfo"
End Sub
'
Private Sub Class_Terminate()

End Sub
'预定义事件的标题,也可以说是类型
Public Function eventTitles(typenum)
Dim arrType(9)
arrType(0)="未知事件"
arrType(1)="非法的用户登陆"
arrType(2)="URL传递非法参数"
arrType(3)="登陆传入非法字符"
arrType(4)="登陆频繁,超过规定时间内登陆次数"
arrType(5)="查询传入非法字符"
arrType(6)="查询频繁,超过规定时间内查询次数"
arrType(7)="页面刷新频繁,超过规定时间内刷新次数"
arrType(8)="站外提交数据"
arrType(9)="后台登陆"
If Not IsNumeric(typenum) Then eventTitles="未知事件":Exit Function
If CLng(Abs(typenum))>UBound(arrType) Then
eventTitles="未知事件":Exit Function
End If
eventTitles=arrType(typenum)
End Function
'预定数组显示错误
Public Sub showArrayInfo(infoitems,infovalues)
Dim str
str="<div style='border:2px solid #4E4E9C;font-family:arial ;color:#800040;width:50%;font-size:9pt'>"
str=str&"<ul style='margin:20px;'><b>Asp Event Infomation:</b>"&vbcrlf
If IsArray(infoitems) And IsArray(infovalues) Then
For I=LBound(infoitems) To UBound(infoitems)
str=str&"<li><b style='color:#4E4E9C'>"&infoitems(I)&":</b>"&infovalues(I)&vbcrlf
Next
Else
str=str&"<li><b>"&infoitems&"</b>:"&infovalues&vbcrlf
End If
str=str&"</ul></div>"&vbcrlf
Response.Write str
End Sub
'显示错误
Public Sub showInfo(e_title,c_url,e_num,e_des,e_time,opera,ip,reurl)
Dim infoitems,infovalues
infoitems=Array("Event Title","Event Url","EventNumber","EventDescription",_
"EventTime","Operator","IP","Referer Url"_
)
infovalues=Array(e_title,c_url,e_num,e_des,e_time,opera,ip,reurl)
showArrayInfo infoitems,infovalues
End Sub
'显示原文件的有关信息
Public Sub showOriInfo(oriclass,orifunction,oripage)
Dim infoitems,infovalues
infoitems=Array("Original class","Original function","Original page")
infovalues=Array(oriclass,orifunction,oripage)
showArrayInfo infoitems,infovalues
End Sub
'获取ip
Public Function getIP()
Dim IP
'如果客户端用了代理服务器,则应该用ServerVariables("HTTP_X_FORWARDED_FOR")方法
IP = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If IP = "" or isnull(IP) or isempty(IP) Then
'如果客户端没用代理,应该用Request.ServerVariables("REMOTE_ADDR")方法
IP = Request.ServerVariables("REMOTE_ADDR")
end if
getIP = IP
End Function
'站外提交验证
Public Function checkPost()
Dim server_v1,server_v2
checkPost=False
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
If Mid(server_v1,8,len(server_v2))=server_v2 Then checkPost=True
End Function
'获取来路
Public Function getReferer()
getReferer=Request.ServerVariables("HTTP_REFERER")
End Function
'得到浏览器目前的URL
Public Function getCurURL()
If Request.ServerVariables("HTTPS") = "on" Then
GetCurrentURL = "https://"
Else
GetCurrentURL = "http://"
End If
GetCurURL = GetCurURL & Request.ServerVariables("SERVER_NAME")
If (Request.ServerVariables("SERVER_PORT") <> 80) Then GetCurURL = GetCurURL & ":" & Request.ServerVariables("SERVER_PORT")
GetCurURL = GetCurURL & Request.ServerVariables("URL")
If (Request.QueryString <> "") Then GetCurURL = GetCurURL & "?" & Request.QueryString
End Function
'获取来路或得到浏览器目前的URL,综合前面两个
Public Function getUrl(t)
If t=1 Then
getUrl=getCurURL()
Else
getUrl=getReferer()
End If
End Function
'防刷新
's1:超过s1秒后才允许访问
's2:如果现在时间和上次访问时间相差s2秒则视为刷新频繁
'maxtimes:如果频繁刷新次数等于或大于maxtimes次则记录
'如果是刷新频繁则isRefresh=true,否则为false
Public Function isRefresh(s1,s2,maxtimes)
Dim CacheName
CacheName="eventProvider_2006"

If IsDate(Session(CacheName&"IsRefreshTime")) Then'超过s1秒后才允许访问
If DateDiff("s",Session(CacheName&"IsRefreshTime"),Now())>s1 Then
Session(CacheName&"IsRefreshTime")=Now()
Session(CacheName&"IsRefresh")=False
End If
End If
If Session(CacheName&"IsRefresh")=True Then
isRefresh=True
Else
isRefresh=False
End If

If IsDate(Session(CacheName&"RefreshStart")) Then
If DateDiff("s",Session(CacheName&"RefreshStart"),Now())<s2 Then'//如果现在时间和上次访问时间相差s2秒则视为刷新频繁
Session(CacheName&"RefreshT")=Session(CacheName&"RefreshT")+1'//统计频繁刷新次数
If Session(CacheName&"RefreshT")>=maxtimes Then'//如果频繁刷新次数等于或大于maxtimes次则记录
Session(CacheName&"IsRefresh")=True
Session(CacheName&"IsRefreshTime")=Now()
End If
Else
Session(CacheName&"RefreshT")=0'//如果不是,则把记录频繁刷新次数变为0
End If
End If

Session(CacheName&"RefreshStart")=Now()'//保留这一次访问的时间到下次访问时用
End Function
'写入数据库日志
Public Sub writeToDB(e_title,c_url,e_num,e_des,e_time,opera,ip,reurl,conn)
Dim sql
sql="Insert INTO "&logDBName&"(eTitle,eUrl,eNum,eDes,eTime,Operator,IP,RefererUrl) VALUES("
sql=sql&"'"&e_title&"','"&c_url&"','"&e_num&"','"&e_des&"','"&e_time&"','"&opera&"','"&ip&"','"&reurl&"')"
conn.Execute(sql)
End Sub

End Class
%>

分享:Asp+Ajax实现无刷新增加好友
由于工作关系,要做个人空间,其中有一功能是增加对方为好友.如图: 用到的方法是ajax,费话少说贴切代码: a href=javascript:void(0); onClick =add_username('%= rs(username) %');加为好友/a,用到的js验证: script language = JavaScript src=ajax.

来源:模板无忧//所属分类:ASP教程/更新时间:2012-06-10
相关ASP教程
闂佹眹鍩勯崹閬嶆偤閺囶澁缍栭柛鈩冪⊕閳锋帗銇勯弴妤€浜惧銈忕秶閹凤拷
濠电偛顕慨顓㈠磻閹炬枼妲堥柡鍌濇硶婢ф稒淇婇懠顒夆偓婵嬫煟閵忊晛鐏查柟鍑ゆ嫹
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径瀣閻庣懓瀚竟鍡欐崲娑斾線鏌i姀鈺佺伈闁瑰嚖鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勵吋闂佽鍨庨崟顓фК闂佽閰eḿ褍螞濞戙垺鍋夐柨鐕傛嫹
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ帒鍊哥敮鍫曞箹鐎涙ḿ鐭掔€规洘绻堥弫鎾绘晸閿燂拷
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ巻鍋撻柛姘儑缁﹪鏁傞崜褏鐓撻柣搴岛閺呮繈鎯屽▎鎴犵=濞撴艾锕ョ€氾拷
闂備浇銆€閸嬫挻銇勯弽銊р槈闁伙富鍣i弻娑樷攽閹邦亞鑳虹紓浣靛妽濡炶棄顕i妸鈺婃晬婵炲棙鍨电粭锟犳⒑閸濆嫬鈧骞婇幘鑸殿潟闁跨噦鎷�
闂備礁鎼崯鐗堟叏妞嬪海绀婂鑸靛姈閻擄綁鎮规潪鎷岊劅婵炲眰鍊曢湁闁挎繂妫欑粈鈧梺鍛娚戦悧鐘茬暦閹扮増鏅搁柨鐕傛嫹
婵犵妲呴崹顏堝礈濠靛棭鐔嗘俊顖氬悑鐎氱粯銇勯幘瀵哥畺閻庢熬鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓奸崶銊ヮ伕濡炪倖鎸荤换鍐偓姘虫珪娣囧﹪顢涘Δ鈧晶鍙夌節椤喗瀚�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洦鍓熼、娆撳礂閻撳簶鍋撻悽鍛婄厸闁割偅绻勫瓭婵犳鍣幏锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾闁哄苯鎳橀崺鈧い鎺嗗亾闁宠閰i獮鎴﹀箛闂堟稒顔嗛梻浣告惈鐎氭悂骞忛敓锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洩缍侀獮瀣攽閸偂绱�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勭厬闂佺懓鐡ㄧ换鍕敂鐎涙ü绻嗘い鏍殔婢у弶绻濋~顔藉
闂佽楠搁崢婊堝礈濠靛鍋嬮柟鎯版閻鈹戦悩鎻掓殭闁奸潧缍婇弻銈夋嚍閵夈儱顫嶉梺缁樼壄缂嶄礁鐣峰▎鎾存櫢闁跨噦鎷�
UB闂備礁婀辩划顖炲礉濡ゅ懐宓侀柛銉㈡櫆鐎氭岸鎮楀☉娅虫垿锝為敓锟�
闂備浇澹堟ご绋款潖婵犳碍鐒鹃悗鐢电《閸嬫捇鐛崹顔句痪濠电姭鍋撻柨鐕傛嫹
闂佽楠哥粻宥夊垂閸濆嫸鑰块柛銏㈠殰
闂備礁鎲″缁樻叏妞嬪海绀婂璺虹灱閸楁碍绻涢崱妤€顒㈤柛鐐差槹缁绘稓绱欓悩鍝勫帯闂佺ǹ楠忛幏锟�
缂傚倸鍊烽悞锕傛偡閿曞倸鍨傛繝濠傚椤╅攱銇勯幒宥囶槮缂佹彃婀遍埀顒傚仯閸婃繄绱撳棰濇晩闁跨噦鎷�
©2017 www.mb5u.com婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎殿噮鍣i幃鈺呭箵閹烘挸鐦�
闂備浇銆€閸嬫捇鏌熼婊冾暭妞ゃ儻鎷�&闂備礁鎲$敮鎺懳涢弮鍫燁棅闁跨噦鎷�