Beim Schreiben von ASP müssen wir auf die Verarbeitung spezieller Zeichenfolgen achten, um zu verhindern, dass sie von Hackern verwendet werden. Freunde, die ASP verwenden, müssen darauf verweisen.
Kopieren Sie den Codecode wie folgt:
'=====================================
„Konvertieren Sie Inhalte, um Unfälle zu vermeiden.“
'=====================================
Funktion Content_Encode(ByVal t0)
WENN IsNull(t0) Oder Len(t0)=0 Dann
Content_Encode=""
Anders
Content_Encode=Replace(t0,"<","<")
Content_Encode=Replace(Content_Encode,">",">")
Beenden Sie IF
Funktion beenden
'=====================================
„Inhalt dekonvertieren.“
'=====================================
Funktion Content_Decode(ByVal t0)
WENN IsNull(t0) Oder Len(t0)=0 Dann
Content_Decode=""
Anders
Content_Decode=Replace(t0,"<","<")
Content_Decode=Replace(Content_Decode,">",">")
Beenden Sie IF
Funktion beenden
'=====================================
'Charaktere filtern
'=====================================
Funktion FilterText(ByVal t0,ByVal t1)
WENN Len(t0)=0 oder IsNull(t0) oder IsArray(t0) dann FilterText="":Funktion beenden
t0=Trimm(t0)
Wählen Sie Fall t1 aus
Fall „1“
t0=Replace(t0,Chr(32)," ")
t0=Ersetzen(t0,Chr(13),"")
t0=Replace(t0,Chr(10)&Chr(10),"<br>")
t0=Replace(t0,Chr(10),"<br>")
Fall „2“
t0=Replace(t0,Chr(8),"")'return
t0=Replace(t0,Chr(9),"")'tab (horizontales Tabulatorzeichen)
t0=Replace(t0,Chr(10),"")'Newline
t0=Replace(t0,Chr(11),"")'tab (vertikales Tabulatorzeichen)
t0=Replace(t0,Chr(12),"")'Seitenwechsel
t0=Replace(t0,Chr(13),"")' Wagenrücklauf chr(13)&chr(10) Kombination aus Wagenrücklauf und Zeilenvorschub
t0=Ersetzen(t0,Chr(22),"")
t0=Replace(t0,Chr(32),"")'SPACE
t0=Replace(t0,Chr(33),"")'!
t0=Replace(t0,Chr(34),"")'"
t0=Replace(t0,Chr(35),"")'#
t0=Replace(t0,Chr(36),"")'$
t0=Replace(t0,Chr(37),"")'%
t0=Replace(t0,Chr(38),"")'&
t0=Ersetzen(t0,Chr(39),"")''
t0=Replace(t0,Chr(40),"")'(
t0=Replace(t0,Chr(41),"")')
t0=Replace(t0,Chr(42),"")'*
t0=Replace(t0,Chr(43),"")'+
t0=Replace(t0,Chr(44),"")',
t0=Replace(t0,Chr(45),"")'-
t0=Replace(t0,Chr(46),"")'.
t0=Replace(t0,Chr(47),"")'/
t0=Replace(t0,Chr(58),"")':
t0=Replace(t0,Chr(59),"")';
t0=Replace(t0,Chr(60),"")'<
t0=Replace(t0,Chr(61),"")'=
t0=Replace(t0,Chr(62),"")'>
t0=Replace(t0,Chr(63),"")'?
t0=Replace(t0,Chr(64),"")'@
t0=Replace(t0,Chr(91),"")'/
t0=Replace(t0,Chr(92),"")'/
t0=Replace(t0,Chr(93),"")']
t0=Replace(t0,Chr(94),"")'^
t0=Replace(t0,Chr(95),"")'_
t0=Replace(t0,Chr(96),"")'`
t0=Replace(t0,Chr(123),"")'{
t0=Replace(t0,Chr(124),"")'|
t0=Replace(t0,Chr(125),"")'}
t0=Replace(t0,Chr(126),"")'~
Fall anders
t0=Ersetzen(t0, „&“, „&“)
t0=Ersetzen(t0, "'", "'")
t0=Ersetzen(t0, """", """)
t0=Ersetzen(t0, „<“, „<“)
t0=Ersetzen(t0, ">", ">")
Endauswahl
IF Instr(Lcase(t0),"expression")>0 Then
t0=Ersetzen(t0,"Ausdruck","Ausdruck", 1, -1, 0)
Ende wenn
FilterText=t0
Funktion beenden
'=====================================
'Filtern Sie allgemeine Zeichen und HTML
'=====================================
Funktion FilterHtml(ByVal t0)
WENN Len(t0)=0 oder IsNull(t0) oder IsArray(t0) dann FilterHtml="":Exit-Funktion
IF Len(Sdcms_Badhtml)>0 Then t0=ReplaceText(t0,"<(//|)("&Sdcms_Badhtml&")", "<$1$2")
IF Len(Sdcms_BadEvent)>0 Then t0=ReplaceText(t0,"<(.[^>]*)("&Sdcms_BadEvent&")", "<$1$2")
t0=FilterText(t0,0)
FilterHtml=t0
Funktion beenden
Funktion GotTopic(ByVal t0,ByVal t1)
WENN Len(t0)=0 oder IsNull(t0) dann
GotTopic=""
Exit-Funktion
Beenden Sie IF
Dim l,t,c,i
t0=Replace(Replace(Replace(Replace(t0," "," "),"",chr(34)),">",">"),"<","<")
l=Len(t0)
t=0
Für I=1 Zu l
c=Abs(Asc(Mid(t0,i,1)))
WENN c>255 Dann t=t+2 Sonst t=t+1
WENN t>=t1 Dann
gotTopic=Left(t0,I)&"…"
Ausgang für
Anders
GotTopic=t0
Beenden Sie IF
Nächste
GotTopic=Replace(Replace(Replace(Replace(GotTopic," "," "),chr(34),""),">",">"),"<","<")
Funktion beenden
Funktion UrlDecode(ByVal t0)
Dimmen Sie t1,t2,t3,i,t4,t5,t6
t1=""
t2=Falsch
t3=""
Für I=1 bis Len(t0)
t4=Mitte(t0,I,1)
IF t4="+" Dann
t1=t1&" "
ElseIF t4="%" Dann
t5=Mitte(t0,i+1,2)
t6=Cint("&H" & t5)
WENN t2 Dann
t2=Falsch
t1=t1&Chr(Cint("&H"&t3&t5))
Anders
WENN Abs(t6)<=127 dann
t1=t1&Chr(t6)
Anders
t2=Wahr
t3=t5
Beenden Sie IF
Beenden Sie IF
I=I+2
Anders
t1=t1&t4
Beenden Sie IF
Nächste
URLDecode=t1
Funktion beenden
Funktion CutStr(byVal t0,byVal t1)
Dim l,t,c,i
IF IsNull(t0) Then CutStr="":Exit-Funktion
l=Len(t0)
t1=Int(t1)
t=0
Für I=1 Zu l
c=Asc(Mid(t0,I,1))
WENN c<0 oder c>255, dann t=t+2, sonst t=t+1
WENN t>=t1 Dann
CutStr=Left(t0,I)&"..."
Ausgang für
Anders
CutStr=t0
Beenden Sie IF
Nächste
Funktion beenden
Funktion CloseHtml(ByVal t0)
Dimmen Sie t1,I,t2,t3,Regs,Matches,J,Match
Setze Regs=Neue RegExp
Regs.IgnoreCase=True
Regs.Global=True
t1=Array("p", "div", "span", "table", "ul", "font", "b", "u", "i", "h1", "h2", "h3". „“, „h4“, „h5“, „h6“)
Für I=0 bis UBound(t1)
t2=0
t3=0
Regs.Pattern="/<"&t1(I)&"( [^/</>]+|)/>"
Set Matches=Regs.Execute(t0)
Für jedes Spiel in Spielen
t2=t2+1
Nächste
Regs.Pattern="/</"&t1(I)&"/>"
Set Matches=Regs.Execute(t0)
Für jedes Spiel in Spielen
t3=t3+1
Nächste
Für j=1 bis t2-t3
t0=t0+"</"&t1(I)&">"
Nächste
Nächste
CloseHtml=t0
Funktion beenden