📄 cls_public.asp
字号:
<%
'====================================================================
'= Team Elite - Elite Article System
'= Copyright (c) 2006 - 2007 jackie zhao All Rights Reserved.
'=-------------------------------------------------------------------
'= 文件名称:/inc/Cls_Public.asp
'= 摘 要:后台-头文件
'=-------------------------------------------------------------------
'= 最后更新:jackie
'= 最后日期:2007-8-29
'====================================================================
Class Cls_Public
Private strAuthor
Private strVersion
Private Sub Class_Initialize() '初始化类
strAuthor = "jackie"
strVersion = "1.0"
End Sub
Private Sub Class_Terminate() '类结束处理
End Sub
public Function getIP() '获取客户端IP
Dim strIPAddr
If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 Then
strIPAddr = Request.ServerVariables("REMOTE_ADDR")
ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 Then
strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1)
actforip=Request.ServerVariables("REMOTE_ADDR")
ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 Then
strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1)
actforip=Request.ServerVariables("REMOTE_ADDR")
Else
strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
actforip=Request.ServerVariables("REMOTE_ADDR")
End If
getIP = CheckStr(Trim(Mid(strIPAddr, 1, 30)))
End Function
Public Function Checkstr(Str) '字符串检测
If Isnull(Str) Then
CheckStr = ""
Exit Function
End If
Str = Replace(Str,Chr(0),"")
CheckStr = Replace(Str,"'","''")
End Function
Public Function ChkPost() '判断是否来自内部
Dim server_v1,server_v2
Chkpost=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 Chkpost=True
End Function
'*********************************
'根据指定名称生成目录
'*********************************
Public Sub MakeNewsDir(foldername)
If Not IsObject(tmpFsoObj) Then Set tmpFsoObj = CreateObject("Scripting.FileSystemObject")
tmpFsoObj.CreateFolder foldername
End Sub
'***********************************
'检查某一目录是否存在
'***********************************
Public Function CheckDir(FolderPath)
If Not IsObject(tmpFsoObj) Then Set tmpFsoObj = CreateObject("Scripting.FileSystemObject")
folderpath=Server.MapPath(".")&"\"&folderpath
If tmpFsoObj.FolderExists(FolderPath) Then
CheckDir = True
Else
CheckDir = False
End If
End Function
'*****************************************
'简单HTML代码过滤函数
'输入参数:
' 1、待过滤字符串
'*****************************************
Public Function Base_HTMLFilter(sInputStr)
If Len(sInputStr)>0 Then
sInputStr=Replace(sInputStr,Chr(13)&Chr(10),vbcrlf)
End If
Base_HTMLFilter=sInputStr
End Function
'*****************************************
'全HTML代码过滤函数
'输入参数:
' 1、待过滤字符串
'*****************************************
Public Function Full_HTMLFilter(sInputStr)
If Len(sInputStr)>0 Then
sInputStr=Replace(sInputStr, ">", ">")
sInputStr=Replace(sInputStr, "<", "<")
sInputStr=Replace(sInputStr, """", """)
sInputStr=Replace(sInputStr, CHR(32), " ")
sInputStr=Replace(sInputStr, CHR(9), " ")
sInputStr=Replace(sInputStr, CHR(34), """)
sInputStr=Replace(sInputStr, CHR(39), "'")
sInputStr=Replace(sInputStr, CHR(13), "")
sInputStr=Replace(sInputStr, CHR(10) & CHR(10), "</P><P> ")
sInputStr=Replace(sInputStr, CHR(10), "<BR>")
Dim re
Set re=new RegExp
re.IgnoreCase =true
re.Global=True
re.Pattern="(javascript)"
sInputStr=re.Replace(sInputStr,"<I>javascript</I>")
re.Pattern="(jscript:)"
sInputStr=re.Replace(sInputStr,"<I>jscript:</I>")
re.Pattern="(js:)"
sInputStr=re.Replace(sInputStr,"<I>js:</I>")
re.Pattern="(value)"
sInputStr=re.Replace(sInputStr,"<I>value</I>")
re.Pattern="(about:)"
sInputStr=re.Replace(sInputStr,"<I>about:</I>")
re.Pattern="(file:)"
sInputStr=re.Replace(sInputStr,"<I>file:</I>")
re.Pattern="(document.cookie)"
sInputStr=re.Replace(sInputStr,"<I>documents.cookie</I>")
re.Pattern="(vbscript:)"
sInputStr=re.Replace(sInputStr,"<I>vbscript:</I>")
re.Pattern="(vbs:)"
sInputStr=re.Replace(sInputStr,"<I>vbs:</I>")
re.Pattern="(on(mouse|exit|error|click|key))"
sInputStr=re.Replace(sInputStr,"<I>on$2</I>")
sInputStr=BadWords_Filter(sInputStr)
End If
Full_HTMLFilter = sInputStr
End Function
'***************************************
'HTML过滤逆转换函数
'输入参数:
' 1、待转换字符串
'***************************************
Public Function Un_Base_HTMLFilter(sInputStr)
If Len(sInputStr)>0 Then
sInputStr = Replace(sInputStr, "</P><P> ", " ")
sInputStr = Replace(sInputStr, "<BR>", " ")
End If
Un_Base_HTMLFilter = sInputStr
End Function
'***************************************
'HTML过滤逆转换函数
'输入参数:
' 1、待转换字符串
'***************************************
Public Function Un_Full_HTMLFilter(sInputStr)
If Len(sInputStr)>0 Then
sInputStr = Replace(sInputStr, "</P><P> ", CHR(10) & CHR(10))
sInputStr = Replace(sInputStr, "<BR>", CHR(10))
End If
Un_Full_HTMLFilter = sInputStr
End Function
'***************************************
'获取随机数
'输入参数:
' 1、取得随机数的长度
'***************************************
Public Function GetRandom(length)
If length<1 Then length =1
For i=1 To length
Randomize
GetRandom=GetRandom&Int(10*Rnd)
Next
End Function
'***************************************
'取得日期+随机数字符串
'输入参数:
' 1、待转换字符串
'***************************************
Public Function getdateID(length)
yeartmp=datepart("yyyy",now)
monthtmp=datepart("m",now)
daytmp=datepart("d",now)
hourtmp=datepart("h",now)
minutetmp=DatePart("n",now)
secondtmp=DatePart("s",now)
If monthtmp<10 Then monthtmp="0"&monthtmp
If daytmp<10 Then daytmp="0"&daytmp
If hourtmp<10 Then hourtmp="0"&hourtmp
If minutetmp<10 Then minutetmp="0"&minutetmp
If secondtmp<10 Then secondtmp="0"&secondtmp
getdateID=yeartmp&monthtmp&daytmp&hourtmp&minutetmp&secondtmp&GetRandom(length)
End Function
Public Function ShowPartIP(IP)
Dim IPTmp
If len(ip)>1 then
IPTmp=InStrRev(IP,".",-1,1)
ShowPartIP=left(IP,IPTmp)&"*"
else
ShowPartIP="*"
end if
End Function
Public Function Formatdate(dateStr,DateType)
End Function
Function InterceptString(txt,length)
txt=trim(txt)
x = len(txt)
y = 0
if x >= 1 then
for ii = 1 to x
if asc(mid(txt,ii,1)) < 0 or asc(mid(txt,ii,1)) >255 then
y = y + 2
else
y = y + 1
end if
if y >= length then
txt = left(trim(txt),ii) '"字符串限长
exit for
end if
next
InterceptString = txt
else
InterceptString = ""
end if
End Function
End Class
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -