Jag hadde tänk mig en funktion, och att man hadde en lista som man kunde fylla på med ord, man inte vill se.(skall vara till mitt forum) Javascript Scriptet är ju kanon, men nu råkar jag ut för något tråkigt.Sv: Censur-script
Sv: Censur-script
http://www.js-x.com/javascript/?id=964
ASP
http://www.codefixer.com/codesnippets/replacebadwords.asp
Men det blir nog ett hästjobb att hålla reda på alla "fula" ord
Det blir precis som spammarna gör, att sätta mellanslag, eller nåt annat tecken mellan bokstäverna
Men du har två tips att kika på i alla fallSv: Censur-script
Så här läser scriptet in "förbjudna" ord:
<code>
'Ursäkta språket
badChars = array("fan", "djävla", "fitta", "kuk","förbannade","djävlar","satan" )
</code>
Vad jag ville göra är att skriva alla orden i en textfil, och läsa in det så att scriptet tar hand om det (borde inte vara så svårt).
<code>
Const Filename = "../Styles/arraytest.asp" ' file to read
Const ForReading = 1, ForWriting = 2, ForAppending = 3
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
Dim FSO
set FSO = server.createObject("Scripting.FileSystemObject")
Dim Filepath
Filepath = Server.MapPath(Filename)
if FSO.FileExists(Filepath) Then
Set TextStream = FSO.OpenTextFile(Filepath, ForReading, False,TristateUseDefault)
Dim Contents
Contents = TextStream.ReadAll
badChars = array(LCase(Replace(Contents,vbCrlf,"")))
TextStream.Close
Set TextStream = nothing
end if
Set FSO = nothing
</code>
Jag får inga som helst fel, men scriptet reagera inte (censuera inte).
För att kolla mig själv så gjorde jag en testfil:
<code>
Const Filename = "../Styles/arraytest.asp" ' file to read
Const ForReading = 1, ForWriting = 2, ForAppending = 3
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
Dim FSO
set FSO = server.createObject("Scripting.FileSystemObject")
Dim Filepath
Filepath = Server.MapPath(Filename)
if FSO.FileExists(Filepath) Then
Set TextStream = FSO.OpenTextFile(Filepath, ForReading, False, _
TristateUseDefault)
Dim Contents
Contents = TextStream.ReadAll
Response.write "<pre>" & Replace(Trim(Contents),vbCrlf,"") & "</pre><hr>"
TextStream.Close
Set TextStream = nothing
end if
Set FSO = nothing
</code>
Outputen ser ut så här:
"fan", "djävla", "fitta", "kuk","förbannade","djävlar","satan"
Vad jag kan se, ingen skillnad.
Några bra förslag?
[REDIGERAT]
Jag har löst det:
<code>
Contents = TextStream.ReadAll
Contents = LCase(Contents)
badChars = Split(Contents, vbCrLf)
TextStream.Close
</code>