Wickmark Medlem sedan juli 2003 162 inlägg Frågan 3 sep. 2003 14:22 #1 Hur skriver jag en funktion som ersätter < och > på taggar som inte tillåts, och hoppar över de som tillåts.
Typ:
(Ingen fungerande kod)
<%
dim TILLATNA
dim ICKE_TILLATNA
dim strChk
Function chkHTML(strChk)
TILLATNA = "font, p, b, hr, i, dd" 'etc...
ICKE_TILLATNA = "embed, meta, object" 'etc....
strChk = Replace(ICKE_TILLATNA,"<","<")
strChk = Replace(ICKE_TILLATNA,">","&rt;")
end function
%>
...
<%=chkHTML(RecSet("Inlagg"))%>
denna koden är bara en typ 'ritning'. Hoppas ni förstår!
Så, ni får klart skriva om hela koden från topp till tå :)
Hur ska jag göra ? Vad är koden?
Väldigt tacksam för ett svar; har letat som besatt :e
MVH
Wickmark
M Melea Medlem sedan juli 2003 3 147 inlägg Bara att göra en enkel funktion:
Function textEncode(str)
str = Replace(str, "<table>", "inte tillåtet")
str = Replace(str, "<tr>","inte tillåtet") textEncode = str
End Function
textEncode(RecSet("inlagg"))
Allt som inte står där funkar alltså att skriva..
Mvh
En funktion som endast släpper igenom tillåten HTML.
Function BlockUnAllowedHTML(ByVal sStr)
Dim vAllowedHTML, i, objRegExp
vAllowedHTML = Array("b", "u")
sStr = Server.HTMLEncode(sStr & "")
Set objRegExp = New RegExp
objRegExp.IgnoreCase = True
objRegExp.Global = True
For i = 0 To UBound(vAllowedHTML)
objRegExp.Pattern = "<(" & vAllowedHTML(i) & ")>([\s\S]*?)</(" & vAllowedHTML(i) & ")>"
sStr = objRegExp.Replace(sStr, "<$1>$2</$3>")
objRegExp.Pattern = "<(" & vAllowedHTML(i) & ".*?)>([\s\S]*?)</(" & vAllowedHTML(i) & ")>"
sStr = objRegExp.Replace(sStr, "<$1>$2</$3>")
Next 'i
Set objRegExp = Nothing
BlockUnAllowedHTML = sStr
End Function
Response.Write BlockUnAllowedHTML("<b>fdmkbfd</b><strong>foo</strong><u>vfdmkkf</u>")
Det är lite osmidigt att behöva skriva ner alla taggar som inte accepteras. Smidigare att skriva de som ska accepteras.
Och att ange både tillåtna taggar och icke tillåtna blir muppigt. Hur ska de taggar som inte finns med i någon av listorna behandlas?
Wickmark Medlem sedan juli 2003 162 inlägg
Erik Juhlin skrev:
Det är lite osmidigt att behöva skriva ner alla taggar som inte accepteras. Smidigare att skriva de som ska accepteras.
Och att ange både tillåtna taggar och icke tillåtna blir muppigt. Hur ska de taggar som inte finns med i någon av listorna behandlas?
Hehehe, jag tänkte precis på det efter jag hade stängt ner datorn :stud
Om man skulle använda ungefär samma system jag gav i exemplet, skulle man ju behöva skriva in precis alla HTML taggar som finns :)
Tack så mycket för din hjälp! :e