Avatar billede area404 Nybegynder
16. november 2006 - 09:15 Der er 4 kommentarer og
1 løsning

Replace HTML og URL

Hej,

Jeg har en kode der ser således ud:

SQL = "INSERT INTO `kom` ( `kommentar` , `user` , `ID` , `dato`) "
SQL = SQL & " VALUES ("
SQL = SQL & "'" & Replace(request.form("kommentar"), "'", "''") & "', "
SQL = SQL & "'" & Replace(request.form("user"), "'", "''") & "', "
SQL = SQL & "'" & Request.querystring("ID") & "', "
SQL = SQL & "Now())"

Som man kan se erstatter den nogle tegn så jeg undgår at folk laver kage i min ASP kode.
Men hvis jeg nu vil undgå at en ting som fx <iframe> ikke skal virke, hvad så?
Jeg vil gerne disable alt HTML udover links. findes der en måde hvorledes at jeg kan se om der bliver sat en adresse ind www.et-eller-andet.com og så lave det om til et link?

ROn
Avatar billede fennec Nybegynder
16. november 2006 - 09:34 #1
Brug din indsættelse som den er nu. Men når du udskriver så send det igennem en server.HTMLencode("tekst"). Fortæl samtidig dine brugere at links bare skal skrives som "www.domæne.dk" og lav så selv alle links om til <a></a> tags med en funktion.

Her har du koden:
Function LinkString(strInput)
dim arrPattern, arrReplaceString, Rx, intIndex
  arrPattern = Array("([\w\._-]+@[\w\._-]+\.[A-Za-z]{2,4}\S*)", _
  "(http|https|ftp)(:\/\/[\w\._-]+\.[\w\._-]+\S*)", _
  "(^|[^\/])(www[^\.\s]?\.[\w\._-]+\.[A-Za-z]{2,4}\S*)")

  arrReplaceString = Array(" <a href='mailto:$1'>$1</a> ", _
  " <a href='$1$2' target='_blank'>$1$2</a> ", _
  " <a href='http://$2' target='_blank'>$2</a> ")

  Set Rx = New RegExp
  Rx.Global = True
  Rx.IgnoreCase = True

  For intIndex = 0 To UBound(arrPattern)
    Rx.Pattern = arrPattern(intIndex)
    strInput = Rx.Replace(strInput, arrReplaceString(intIndex))
  Next
  Set Rx = Nothing

  LinkString = strInput
End Function

Response.write LinkString(server.htmlencode("en tekst med link www.site.dk/index.asp"))

den laver også email adr om til mailto links.
Avatar billede area404 Nybegynder
16. november 2006 - 10:02 #2
Det er bare kanon godt, det virker bare! Tak :-)
Smider du lige et svar?
Avatar billede fennec Nybegynder
16. november 2006 - 10:18 #3
.o) <-- One Eyed Jack
Avatar billede area404 Nybegynder
16. november 2006 - 10:22 #4
=O) <-- No eye Bob
Avatar billede fennec Nybegynder
16. november 2006 - 10:27 #5
Tak for point.
|o) <-- Anonymius Bill
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester