/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Fjernelse af HTML koder.?
Fra : Erik Hansen


Dato : 25-06-01 13:48


Er der en funktion i ASP som kan fjerne alle HTML kode.?

....Erik

 
 
Lars Hoffmann (25-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 25-06-01 14:06

Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:
> Er der en funktion i ASP som kan fjerne alle HTML kode.?

Ikke fjerne dem, men htmlenkoder dem saaledes at de ikke bliver
fortolket. Funktionen er server.HTMLEncode()
Med venlig hilsen
Lars Hoffmann



--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

Erik Hansen (25-06-2001)
Kommentar
Fra : Erik Hansen


Dato : 25-06-01 14:30

On Mon, 25 Jun 2001 13:06:09 +0000 (UTC), Lars Hoffmann
<lars@hoffmann.ac> wrote:

>Ikke fjerne dem, men htmlenkoder dem saaledes at de ikke bliver
>fortolket. Funktionen er server.HTMLEncode()

Det er jo noget af vejen, men jeg er ikke helt tilfreds.

Selvom de ikke bliver fortolket, bliver de jo vist i browseren, og det
syntes jeg heller ikke om.

Jeg har en variabel (oprindeligt fra en Access database) som
indeholder:

"<P>Dette er bare <B>fedt</B>.</P>

som skal omsættes til

"Dette er bare fedt."

Hvordan laves det på den nemmeste måde.?

....Erik

Lars Hoffmann (25-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 25-06-01 15:19

Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:

> "Dette er bare fedt."
>
> Hvordan laves det på den nemmeste måde.?

Det absolut nemmeste er at sporge her i gruppen og saa kommer der nok en
med en funktion der kan det Her er hvad jeg lige fik brygget sammen
(Nogle af mine linier bliver knaekket nu hvor jeg poster):
<%

function killHTML(tekst)
dim isHTML
dim tempstring
dim i
            
isHTML=false
      
i=1
do while i<=len(tekst)
if mid(tekst,i,1)= "<" then
isHTML=true
end if
         
if isHTML then
if mid(tekst,i,1)= ">" then
isHTML=false
i= i +1
end if
end if
         
if not ishtml then
tempString=tempstring & mid(tekst,i,1)   
end if
      
i= i +1
loop
      
killHTML=tempString
end function

%>

Med venlig hilsen
Lars Hoffmann

--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

James Olsen (25-06-2001)
Kommentar
Fra : James Olsen


Dato : 25-06-01 15:45


"Lars Hoffmann" <lars@hoffmann.ac> wrote in message
news:9h7h8s$hn3$1@sunsite.dk...
> Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:
>
> > "Dette er bare fedt."
> >
> > Hvordan laves det på den nemmeste måde.?
>
> Det absolut nemmeste er at sporge her i gruppen og saa kommer der nok en
> med en funktion der kan det Her er hvad jeg lige fik brygget sammen
> (Nogle af mine linier bliver knaekket nu hvor jeg poster):
> <%
>
> function killHTML(tekst)
> dim isHTML
> dim tempstring
> dim i
>
> isHTML=false
>
> i=1
> do while i<=len(tekst)
> if mid(tekst,i,1)= "<" then
> isHTML=true
> end if
>
> if isHTML then
> if mid(tekst,i,1)= ">" then
> isHTML=false
> i= i +1
> end if
> end if
>
> if not ishtml then
> tempString=tempstring & mid(tekst,i,1)
> end if
>
> i= i +1
> loop
>
> killHTML=tempString
> end function
>
> %>

input : Når x < 10 gælder det at y > 40
output : Når x 40

buz, Det er desværre ikke helt så enkelt, hvis du skal have en skudsikker
løsning så er det velkommen til den vidunderlige verder ef parsere. Med
andre ord man er nød til at parse stringen som var det HTML ellers kan der
ske sjove ting ;)

Men selvfølgelig skal indsats og udbytte stå i forhold til hinanden så alt
efter hvor vigtigt det er at det bliver korrekt, kan du jo så gå igang.

>
> Med venlig hilsen
> Lars Hoffmann
>
> --
> Brug Validator service: http://www.html.dk/validator
> - Tast din URL én gang, og validér dokumentet hos 12 validatorer
> - Understøtter HTML, CSS og søgemaskineoptimering



Lars Hoffmann (25-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 25-06-01 16:01

James Olsen wrote in dk.edb.internet.webdesign.serverside.asp:

> input : Når x < 10 gælder det at y > 40
> output : Når x 40

Eller endnu vaerrere:
input: naar x < 10 saa bla bla bla bla (kaempelang tekst)
output: naar x

> buz, Det er desværre ikke helt så enkelt, hvis du skal have en
skudsikker
> løsning så er det velkommen til den vidunderlige verder ef parsere. Med
> andre ord man er nød til at parse stringen som var det HTML ellers kan der
> ske sjove ting ;)

klart nok, men at parse en tekst i ASP for at finde HTML output er pt. lige
over mine evner

Med venlig hilsen
Lars Hoffmann


--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

Jonathan Stein (25-06-2001)
Kommentar
Fra : Jonathan Stein


Dato : 25-06-01 21:27

James Olsen wrote:

> input : Når x < 10 gælder det at y > 40

Bør stå som: Når x &lt; 10 gælder det at y &gt; 40
- hvis teksten er skrevet i HTML.

M.v.h.

Jonathan

--
jsp-hotel.dk tilbyder profesionelle webhoteller med bl.a. Resin JSP,
PHP, MySQL, SSH/Telnet adgang, rå log-filer, grafisk statistik og
99% oppetidsgaranti.
http://www.jsp-hotel.dk/




James Olsen (26-06-2001)
Kommentar
Fra : James Olsen


Dato : 26-06-01 17:03


"Jonathan Stein" <jstein@image.dk> wrote in message
news:3B379EA7.14597616@image.dk...
> James Olsen wrote:
>
> > input : Når x < 10 gælder det at y > 40
>
> Bør stå som: Når x &lt; 10 gælder det at y &gt; 40
> - hvis teksten er skrevet i HTML.

Hvis teksten er HTMLEncoded så ja, men det er ikke det som det handler om.
Det handler om at fjerne tags skrevet. Han vil heller ikke have at <br> står
i output selvom det er HTMLEncoded.

>
> M.v.h.
>
> Jonathan
>
> --
> jsp-hotel.dk tilbyder profesionelle webhoteller med bl.a. Resin JSP,
> PHP, MySQL, SSH/Telnet adgang, rå log-filer, grafisk statistik og
> 99% oppetidsgaranti.
> http://www.jsp-hotel.dk/
>
>
>



Thygesen (26-06-2001)
Kommentar
Fra : Thygesen


Dato : 26-06-01 20:31

"James Olsen" <james_olsen@vip.cybercity.dk> skrev i en meddelelse
news:9habqt$2lv4$1@news.cybercity.dk...
>
> Hvis teksten er HTMLEncoded så ja, men det er ikke det som det handler om.
> Det handler om at fjerne tags skrevet. Han vil heller ikke have at <br>
står
> i output selvom det er HTMLEncoded.

Denne funktion fjerner alle html tags:

Function clearBody(bodyTxt)
chekBody = True
'fjerner alle html tags
Do While chekBody = True
startBody = Instr(1,bodyTxt,"<")
slutBody = Instr(startBody+1,bodyTxt,">")
If startBody > 1 Then
bodyTxt = Left(bodyTxt,startBody-1) &
Mid(bodyTxt,slutBody+1,Len(bodyTxt))
Else
chekBody = False
End If
Loop
clearBody = bodyTxt
End Function


Mvh. Christoffer Thygesen

e-mail: cht@cht.dk
homepage: http://cht.dk



Lars Hoffmann (26-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 26-06-01 20:46

Thygesen wrote:
>
> Denne funktion fjerner alle html tags:

Den gør jo præcis det samme og har præcis de samme problemer som den
funktion jeg skrev før.
Med venlig hilsen
Lars

Jonathan Stein (26-06-2001)
Kommentar
Fra : Jonathan Stein


Dato : 26-06-01 23:18

James Olsen wrote:

> > > input : Når x < 10 gælder det at y > 40
> >
> > Bør stå som: Når x &lt; 10 gælder det at y &gt; 40
> > - hvis teksten er skrevet i HTML.
>
> Hvis teksten er HTMLEncoded så ja,

- eller skrevet af en anden person/funktion, der skriver korrekt HTML. Erik
skrev jo, at teksten kom fra en database, så hvis han f.eks. har nogle tekster
liggende i HTML-format, bør < og > være kodet korrekt.

M.v.h.

Jonathan

--
jsp-hotel.dk tilbyder profesionelle webhoteller med bl.a. Resin JSP,
PHP, MySQL, SSH/Telnet adgang, rå log-filer, grafisk statistik og
99% oppetidsgaranti.
http://www.jsp-hotel.dk/




Erik Hansen (25-06-2001)
Kommentar
Fra : Erik Hansen


Dato : 25-06-01 18:10

>Det absolut nemmeste er at sporge her i gruppen og saa kommer der nok en
>med en funktion der kan det Her er hvad jeg lige fik brygget sammen
>(Nogle af mine linier bliver knaekket nu hvor jeg poster):

Nu var det ikke ment som at jeg ikke selv "gider" og lave noget. Jeg
vil bare nødig opfinde den dybe tallerken igen, og hvis der var en
smart funktion hvorfor så lave så meget.

Normalt arbejder jeg bedst med PHP, men det er der desvære ikke på
hjemmesiden som mit firma har, og jeg hart i for sig ikke noget i mod
at lære begge sprog.

....Erik

Lars Hoffmann (25-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 25-06-01 18:44

Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:
>
> Nu var det ikke ment som at jeg ikke selv "gider" og lave noget. Jeg
> vil bare nødig opfinde den dybe tallerken igen, og hvis der var en
> smart funktion hvorfor så lave så meget.

Det var nu ogsaa blot sagt i spoeg lad dig endelig ikke fornaerme af det.
Med venlig hilsen
Lars Hoffmann


--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

Peter Lykkegaard (26-06-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 26-06-01 06:57


"Lars Hoffmann" <lars@hoffmann.ac> wrote in message
news:9h7t9n$b6o$1@sunsite.dk...
> Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:
> >
> > Nu var det ikke ment som at jeg ikke selv "gider" og lave noget. Jeg
> > vil bare nødig opfinde den dybe tallerken igen, og hvis der var en
> > smart funktion hvorfor så lave så meget.
>
> Det var nu ogsaa blot sagt i spoeg lad dig endelig ikke fornaerme af det.

Uden den medfølgende kode kunne det opfattes som en rigtig giftig kommentar

Men det var nu ikke sådan jeg læste det

Jeg har selv brændt fingrene på den konto utallige gange

mvh/Peter Lykkegaard



Erik Hansen (27-06-2001)
Kommentar
Fra : Erik Hansen


Dato : 27-06-01 06:21

Hejsa.

Jeg kan se der er startet en mindre debat omkring mit indlæg.

Tak for de fine eksempler der er kommet, det har givet insperation.

Jeg er dog kommet frem til selv at lave et stykke kode selv, da jeg
bedre kan forstå det (og så lære jeg også mere ved det), om det et så
er smart og kan optimeres mere ved jeg ikke, men mine ASP evner rækker
ikke længere lige nu.

Jeg er godt klar over at hvis jeg i min artikel har noget som starter
med et <, så vil det også blive fjernet, men lige nu findes der ikke
sådanne tegn, og kommer der nogen, må jeg bare sørge for at ændre dem
til &lt;.

Her er så den kode som jeg bruger. Teksten som der skal fjernes HTML
koder fra er typisk på 300 - 500 bytes.


DIM StartSlet
DIM II
II = 1
WHILE II <= Len(KortArtikel)
IF Mid(KortArtikel, II, 1) = "<" THEN ' "TAG begynder"
StartSlet = II
DO WHILE II <= Len(KortArtikel)
IF Mid(KortArtikel, II, 1) = ">" THEN ' "TAG slutter"
KortArtikel = Replace(KortArtikel, (Mid(KortArtikel,StartSlet,
(II - StartSlet+1))), "")
II = 1
EXIT DO
END IF
II = II + 1
LOOP
END IF
II = II + 1
WEND

....Erik.

Lars Hoffmann (27-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 27-06-01 08:31

Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:
>
> Her er så den kode som jeg bruger. Teksten som der skal fjernes HTML
> koder fra er typisk på 300 - 500 bytes.

Det ser jo ogsaa fint ud, det eneste jeg har noget imod er at du inde i
den dybeste if saetning saetter II = 1, hvilket vil bevirke at der
startes forfra med at tjekke for htmltags hver gang du har fjernet et.
Hvis du har mange htmltags kan dette vaere unoedvendigt tungt. Proev at
lave lidt om saaledes at det ikke er noedvendigt at starte forfra hver
gang den finder et html tag.
Med venlig hilsen
Lars Hoffmann


--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

Erik Hansen (27-06-2001)
Kommentar
Fra : Erik Hansen


Dato : 27-06-01 18:41

On Wed, 27 Jun 2001 07:30:39 +0000 (UTC), Lars Hoffmann
<lars@hoffmann.ac> wrote:

>Det ser jo ogsaa fint ud, det eneste jeg har noget imod er at du inde i
>den dybeste if saetning saetter II = 1, hvilket vil bevirke at der
>startes forfra med at tjekke for htmltags hver gang du har fjernet et.
>Hvis du har mange htmltags kan dette vaere unoedvendigt tungt. Proev at
>lave lidt om saaledes at det ikke er noedvendigt at starte forfra hver
>gang den finder et html tag.

Grunden til at jeg har valgt at lade den starte forfra er hvis man nu
antage at den finder følgende

<TABLE BORDER="0">

Når jeg så har fjernet ovenstående, bliver teksten jo 20 tegn mindre.
Dvs. at når den igen starter med at søge efter et start tegn "<", vil
den starte på position 20, (det som inde fjernelse af <TABLE...> var
position 40). Dvs. at hvis der er TAG mellem position 20 og 40
springer den jo dem over. Og efter en <TABLE...> kommer der jo altid
en <TR> og <TD> efter, som også skal fjernes.

Men jeg har tænkt på at jeg kunne jo gører det at jeg sætte II det
antal tegn mindre som den lige har fjernet, så starter den ikke forfra
hvergang. Det bør virke. Jeg finde ført ud af det i morgen på
arbejdet.

Det er klar at hvis jeg har en stor HTML kode på mange Kb, så løber
den jo teksten mange gange igennem, men fordi jeg anvender replace()
vil den jo ikke løben en tekst igennem mere end én gang hvis den
f.eks. finder en <P>, som der ofter er mange af, eller en <BR>, jeg
synte selv det er ret smart.


....Erik

Peter Lykkegaard (28-06-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 28-06-01 07:42


"Erik Hansen" <ehh@post1.tele.dk> wrote in message
news:ru5kjt4n1f4meo2fsal3v9u14o3gsp7gc4@4ax.com...
> On Wed, 27 Jun 2001 07:30:39 +0000 (UTC), Lars Hoffmann
> <lars@hoffmann.ac> wrote:
>
> Det er klar at hvis jeg har en stor HTML kode på mange Kb, så løber
> den jo teksten mange gange igennem, men fordi jeg anvender replace()
> vil den jo ikke løben en tekst igennem mere end én gang hvis den
> f.eks. finder en <P>, som der ofter er mange af, eller en <BR>, jeg
> synte selv det er ret smart.
>
Prøv at kikke ind hos www.pasin.com for lidt mere inspiration
http://www.aspin.com/func/search?tree=aspin&qry=remove+html&cat=

mvh/Peter Lykkegaard



Lars Hoffmann (28-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 28-06-01 14:26

Erik Hansen wrote in dk.edb.internet.webdesign.serverside.asp:
> On Wed, 27 Jun 2001 07:30:39 +0000 (UTC), Lars Hoffmann
> <lars@hoffmann.ac> wrote:
>
> >Det ser jo ogsaa fint ud, det eneste jeg har noget imod er at du inde i
> >den dybeste if saetning saetter II = 1, hvilket vil bevirke at der
> >startes forfra med at tjekke for htmltags hver gang du har fjernet et.
> >Hvis du har mange htmltags kan dette vaere unoedvendigt tungt. Proev at
> >lave lidt om saaledes at det ikke er noedvendigt at starte forfra hver
> >gang den finder et html tag.
>
> Grunden til at jeg har valgt at lade den starte forfra er hvis man nu
> antage at den finder følgende
>
> <TABLE BORDER="0">
>
> Når jeg så har fjernet ovenstående, bliver teksten jo 20 tegn mindre.

Ja det kan jeg godt se, men det er maaske en god idé at finde en metode der
netop undgaar dette problem

> Men jeg har tænkt på at jeg kunne jo gører det at jeg sætte II det
> antal tegn mindre som den lige har fjernet, så starter den ikke forfra
> hvergang. Det bør virke. Jeg finde ført ud af det i morgen på
> arbejdet.

Ja, det kunne du godt goere, men maaske var der en maade der var endnu
nemmere . Istedet for at laegge resultatet i samme variabel som
indeholder det der skal tjekkes for fejl, kunne du laegge resultatet over i
en anden variabel og saaledes aldrigh aendre i den variabel der indeholder
originalen. Paa den maade vil du ikke blive noed til at starte forfra, da
originalen aldrig skifter laengde. Men det er dog smaating, saalaenge der
kun er tale om relativt korte tekster, vil du nok ikke maerke nogen forskel
Med venlig hilsen
Lars

--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

Søg
Reklame
Statistik
Spørgsmål : 177556
Tips : 31968
Nyheder : 719565
Indlæg : 6408862
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste