/ 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
Billeder i resultatet fra søgefunktion
Fra : Kasper Katzmann


Dato : 20-11-03 21:09

Jeg har lavet en lillebitte søgefunktion. Den virker som sådan fint nok,
men når den finder en side hvor der er et billede i inden for de første 200
tegn (LEFT(resultat, 200)), viser den også billedet i resulatet.

Det er lidt ærgeligt, da et <IMG> tag sagtens kan fylde 50 tegn eller mere
inkl. alt-teks m.m.

Hvordan sørger jeg for at billeder ikke bliver vist i resultatet? Kan man
evt. sørge for at al formatering bliver fjernet, uden at det så er HTML
koderne den viser istedet?

--
Mvh
Kasper Katzmann
Katzmann Consulting
http://www.katzmann.dk



 
 
Tom Jensen (20-11-2003)
Kommentar
Fra : Tom Jensen


Dato : 20-11-03 21:45

"Kasper Katzmann"

> Jeg har lavet en lillebitte søgefunktion. Den virker som sådan fint nok,
> men når den finder en side hvor der er et billede i inden for de første
200
> tegn (LEFT(resultat, 200)), viser den også billedet i resulatet.
>
> Det er lidt ærgeligt, da et <IMG> tag sagtens kan fylde 50 tegn eller mere
> inkl. alt-teks m.m.
>

Hvis du bruger VBS kan du checke om <IMG> tag'et findes i strengen og
så afskære strengen hen til <IMG> tag'et.

Altså noget i retning af:

' Findes der et IMG tag i strengen
intSlut = instr(1,resultat,"<IMG>")

if intSlut>0 then
strVar = LEFT(resultat,intSlut )
else
strVar = LEFT(resultat, 200)
end if

Du må lige checke syntaksen, jeg har ikke prøvet det af.

--
Og så et lille guldkorn fra Holger "Vi tror vi ved det, i stedet for at
vide, at vi ikke ved det"

Med venlig hilsen

Tom Jensen
FF Soft
www.ffsoft.dk

Hent en gratis web shop



Jens Gyldenkærne Cla~ (20-11-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 20-11-03 21:49

Kasper Katzmann skrev:

> Hvordan sørger jeg for at billeder ikke bliver vist i
> resultatet? Kan man evt. sørge for at al formatering bliver
> fjernet, uden at det så er HTML koderne den viser istedet?

En simpel mulighed er at bruge replace:

Dim strTekst
strTekst = REPLACE(strTekst, "<", "<!-- ")
strTekst = REPLACE(strTekst, ">", " -->")

Det giver dog problemer hvis strTekst indeholder ubalancerede koder
(hvis din img-kode fx starter i tegn 180 og slutter i tegn 230).

Man kan nok komme det nærmere ved et regex. Her kan man helt slette
tekst indeholdt i < ... >. Hvis man gør det før man klipper med
left, sikrer man også at det er ensartede længder der vises.
Ulempen er så at man ikke kan gøre det i databasen. Overvej evt. om
det kan svare sig at lægge uddraget i tabellen.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Kasper Katzmann (22-11-2003)
Kommentar
Fra : Kasper Katzmann


Dato : 22-11-03 11:23

Jens Gyldenkærne Clausen skrev:
> Kasper Katzmann skrev:
>
>> Hvordan sørger jeg for at billeder ikke bliver vist i
>> resultatet? Kan man evt. sørge for at al formatering bliver
>> fjernet, uden at det så er HTML koderne den viser istedet?

> Man kan nok komme det nærmere ved et regex. Her kan man helt slette
> tekst indeholdt i < ... >. Hvis man gør det før man klipper med
> left, sikrer man også at det er ensartede længder der vises.
> Ulempen er så at man ikke kan gøre det i databasen. Overvej evt. om
> det kan svare sig at lægge uddraget i tabellen.

Jeg fandt det her som virker helt efter hensigten:

Function stripHTML(strHTML)
'Strips the HTML tags from strHTML

Dim objRegExp, strOutput
Set objRegExp = New Regexp

objRegExp.IgnoreCase = True
objRegExp.Global = True
objRegExp.Pattern = "<(.|\n)+?>"

'Replace all HTML tag matches with the empty string
strOutput = objRegExp.Replace(strHTML, "")

'Replace all < and > with &lt; and &gt;
strOutput = Replace(strOutput, "<", "&lt;")
strOutput = Replace(strOutput, ">", "&gt;")

stripHTML = strOutput 'Return the value of strOutput

Response.Write stripHTML

Set objRegExp = Nothing
End Function



--
Mvh
Kasper Katzmann
Katzmann Consulting
http://www.katzmann.dk



Søg
Reklame
Statistik
Spørgsmål : 177550
Tips : 31968
Nyheder : 719565
Indlæg : 6408823
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste