25. november 2001 - 23:25
Der er
3 kommentarer
Undgå HTML m.m
Hvordan undgår jeg folk kan bruge html når de opretter sig i mit community ? <% If Trim(Request(\"navn\")) > \"\" Then Set Conn = Server.CreateObject(\"ADODB.Connection\") DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \" DSN = DSN & \"DBQ=\" & Server.MapPath (\"../../db/bbk_medlemmer.mdb\") Conn.Open DSN if request(\"chatnavn\") = \"\" OR request(\"password\") =\"\" OR request(\"navn\") =\"\" OR request(\"alder\") =\"\" OR request(\"bosted\") =\"\" OR request(\"kon\") =\"\" OR request.form(\"info\") =\"\" OR request(\"status\") =\"\" then Response.Write (\"<b>Du manglede at indtaste nogen oplysninger</b>\") else Conn.Execute \"INSERT INTO bruger (chatnavn,password,navn,alder,bosted,kon,email,status,info,godkendt,kl,dato,ip) VALUES (\'\" & Request(\"chatnavn\") & \"\',\'\" & Request(\"password\") & \"\',\'\" & Request(\"navn\") & \"\',\'\" & Request(\"alder\") & \"\',\'\" & Request(\"bosted\") & \"\',\'\" & Request(\"kon\") & \"\',\'\" & Request(\"email\") & \"\',\'\" & Request(\"status\") & \"\',\'\" & Request(\"info\") & \"\',\'Nej\',\'\" & time() & \"\',\'\" & date() & \"\',\'\" & Request(\"REMOTE_ADDR\") & \"\')\" Conn.Close Set Conn = Nothing Response.Write \"<font size=2><b><center>\" Response.Write \"Du er nu tilmeldt. \" Response.Write \"</center></b></font>\" %>
Annonceindlæg fra Cognizant
AI er ikke problemet. Eksekvering er.
Der bliver investeret massivt i AI. Teknologien er mere tilgængelig end nogensinde, og ambitionerne er høje. Alligevel oplever mange virksomheder, at resultaterne udebliver.
26. november 2001 - 00:02
#2
Jeg har denne function. Den skal dog kaldes i et loop for at tjekke om der er nogle som forsøger at snyde...: Function RemoveHTML( strText ) Const TAGLIST = \";!--;!DOCTYPE;A;ACRONYM;ADDRESS;APPLET;AREA;B;BASE;BASEFONT;BGSOUND;BIG;BLOCKQUOTE;BODY;BR;BUTTON;CAPTION;CENTER;CITE;CODE;COL;COLGROUP;COMMENT;DD;DEL;DFN;DIR;DIV;DL;DT;EM;EMBED;FIELDSET;FONT;FORM;FRAME;FRAMESET;HEAD;H1;H2;H3;H4;H5;H6;HR;HTML;I;IFRAME;IMG;INPUT;INS;ISINDEX;KBD;LABEL;LAYER;LAGEND;LI;LINK;LISTING;MAP;MARQUEE;MENU;META;NOBR;NOFRAMES;NOSCRIPT;OBJECT;OL;OPTION;P;PARAM;PLAINTEXT;PRE;Q;S;SAMP;SCRIPT;SELECT;SMALL;SPAN;STRIKE;STRONG;STYLE;SUB;SUP;TABLE;TBODY;TD;TEXTAREA;TFOOT;TH;THEAD;TITLE;TR;TT;U;UL;VAR;WBR;XMP;\" Const BLOCKTAGLIST = \";APPLET;EMBED;FRAMESET;HEAD;NOFRAMES;NOSCRIPT;OBJECT;SCRIPT;STYLE;\" Dim nPos1 Dim nPos2 Dim nPos3 Dim strResult Dim strTagName Dim bRemove Dim bSearchForBlock nPos1 = InStr(strText, \"<\") Do While nPos1 > 0 nPos2 = InStr(nPos1 + 1, strText, \">\") If nPos2 > 0 Then strTagName = Mid(strText, nPos1 + 1, nPos2 - nPos1 - 1) strTagName = Replace(Replace(strTagName, vbCr, \" \"), vbLf, \" \") nPos3 = InStr(strTagName, \" \") If nPos3 > 0 Then strTagName = Left(strTagName, nPos3 - 1) End If If Left(strTagName, 1) = \"/\" Then strTagName = Mid(strTagName, 2) bSearchForBlock = False Else bSearchForBlock = True End If If InStr(1, TAGLIST, \";\" & strTagName & \";\", vbTextCompare) > 0 Then bRemove = True If bSearchForBlock Then If InStr(1, BLOCKTAGLIST, \";\" & strTagName & \";\", vbTextCompare) > 0 Then nPos2 = Len(strText) nPos3 = InStr(nPos1 + 1, strText, \"</\" & strTagName, vbTextCompare) If nPos3 > 0 Then nPos3 = InStr(nPos3 + 1, strText, \">\") End If If nPos3 > 0 Then nPos2 = nPos3 End If End If End If Else bRemove = False End If If bRemove Then strResult = strResult & Left(strText, nPos1 - 1) strText = Mid(strText, nPos2 + 1) Else strResult = strResult & Left(strText, nPos1) strText = Mid(strText, nPos1 + 1) End If Else strResult = strResult & strText strText = \"\" End If nPos1 = InStr(strText, \"<\") Loop strResult = strResult & strText RemoveHTML = strResult End Function her er det loop du skal hvade i koden: textToGuestbook = RemoveHTML(request.form(\"guestComment\")) textToGuestbook2 = textToGuestbook runNo = 1 AttackLimit = 5 do textToGuestbook = textToGuestbook2 textToGuestbook2 = RemoveHTML(textToGuestbook) runNo = runNo + 1 loop until (textToGuestbook = textToGuestbook2) OR (runNo = AttackLimit) if (runNo < AttackLimit) then insert i datbase (textToGuestbook2) Det er lidt ekstra.Jeg har ikke fået lagt de to ting sammen det ville nok være at fortræke. Men den skulle gerne virke bedre en det link du har fået fra space den fjerne alt tekst mellem < og >. Jeg har klippet koden fra min gæstebog. Hvis du er nogle HTML tags du vil beholde så kan du rette i const TAGLIST = \";!--;...................\" Bare fjern de tags du ønske må bruges eksvis B for bold.