Avatar billede maron Nybegynder
25. juli 2007 - 09:56 Der er 9 kommentarer og
1 løsning

HTML-encode i ASP

Nogen der har en løsning her?
Denne HTML-encode:
tekst = Server.HTMLencode(tekst)

fjerner alle muligheder for at bruge html koder i teksten, men jeg ønsker at <b> og <i> kan anvendes, er det muligt?
Avatar billede softspot Forsker
25. juli 2007 - 10:00 #1
En mulighed var at udskifte de tags ud tillader med nogle som ikke ændres ved HTML-encoding og så skifte dem tilbage når du har HTML-encoded teksten.

tekst = replace(tekst, "<b>", "[**b**]")
tekst = replace(tekst, "<i>", "[**i**]")
tekst = Server.HTMLEncode(tekst)
tekst = replace(tekst, "[**b**]", "<b>")
tekst = replace(tekst, "[**i**]", "<i>")

Denne strategi fungerer godt nok kun med helt simple og stringent indtastede tags. En bedre løsning ville nok involvere regular expressions og sådan en løsning kan jeg desværre ikke lige hoste op med...
Avatar billede softspot Forsker
25. juli 2007 - 10:05 #2
Metoden ovenfor kan gøres lidt mere fleksibel ved at benytte textcompare (dvs. case insensitive). Det gøres som følger:

tekst = replace(tekst, "<b>", "[**b**]", 1, -1, vbTextCompare)
tekst = replace(tekst, "<i>", "[**i**]", 1, -1, vbTextCompare)
tekst = Server.HTMLEncode(tekst)
tekst = replace(tekst, "[**b**]", "<b>", 1, -1, vbTextCompare)
tekst = replace(tekst, "[**i**]", "<i>", 1, -1, vbTextCompare)
Avatar billede maron Nybegynder
25. juli 2007 - 10:11 #3
Super. afprøver lige.:)
Avatar billede maron Nybegynder
25. juli 2007 - 10:22 #4
Det virker faktisk, men jeg kan ikke afslutte </b> og </i>
Avatar billede maron Nybegynder
25. juli 2007 - 10:39 #5
Nu virker det. :-)
Ved ikke om jeg må stille spørgsmålet her, eller om jeg skal oprette et ny?

Hvordan vil det være muligt at erstatte et tegn, f.eks som :11: med et billed?
Avatar billede softspot Forsker
25. juli 2007 - 10:42 #6
Ja, jeg kan godt se at jeg ikke fik udskiftet det afsluttende tag, men det lader til at du fandt ud af det alligevel :)

Udskiftning til billede gøre på samme måde som med tags:

tekst = replace(tekst, ":11:", "<img src=""billede.jpg"">", 1, -1, vbTextCompare)
Avatar billede maron Nybegynder
25. juli 2007 - 11:01 #7
Perfekt. mange tak for hjælpen.
Avatar billede softspot Forsker
25. juli 2007 - 11:14 #8
Velbekomme :)
Avatar billede maron Nybegynder
25. juli 2007 - 11:25 #9
:)
Avatar billede softspot Forsker
25. juli 2007 - 11:45 #10
Tak for point :)
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