/ 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
Lave link med [url] ved Replace()
Fra : Jens Peter Rosenkvis~


Dato : 15-08-04 15:31

Jeg kunne godt tænke mig at de brugere der er på min side kan
lave link ved at eksempelvis skrive [url]www.google[/url]

[url] kan jeg så via Replace lave til <a href="

og lave [/url] til ">link</a>

Problemet er, at jeg også gerne vil have der står www.google.com,
der hvor jeg nu har skrevet "link".
Altså så [url]www.google.com[/url] bliver til
<a href="www.google.com">www.google.com

Kan det gøres på en smart måde?

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Nederbasse (15-08-2004)
Kommentar
Fra : Nederbasse


Dato : 15-08-04 16:16


"Jens Peter Rosenkvist" <JenserCube@ofir.dk> skrev i en meddelelse
news:411f7387$0$73940$14726298@news.sunsite.dk...
> Jeg kunne godt tænke mig at de brugere der er på min side kan
> lave link ved at eksempelvis skrive [url]www.google[/url]
>
> [url] kan jeg så via Replace lave til <a href="
>
> og lave [/url] til ">link</a>
>
> Problemet er, at jeg også gerne vil have der står www.google.com,
> der hvor jeg nu har skrevet "link".
> Altså så [url]www.google.com[/url] bliver til
> <a href="www.google.com">www.google.com
>
> Kan det gøres på en smart måde?
>
> --
Hvordan skal linkene gemmes ?

Lars



Jens Peter Rosenkvis~ (15-08-2004)
Kommentar
Fra : Jens Peter Rosenkvis~


Dato : 15-08-04 16:55

Nederbasse wrote in dk.edb.internet.webdesign.serverside.asp:

> Hvordan skal linkene gemmes ?

"[url]www.google[/url]" bliver gemt i en database sammen med resten
af brugerens svar.

"<a href="www.google.com">www.google.com" Skal der så stå, når
man læser beskeden på min side.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (15-08-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 15-08-04 21:22

Jens Peter Rosenkvist skrev:
> Altså så [url]www.google.com[/url] bliver til
> <a href="www.google.com">www.google.com

Regex er din ven:

Function formatLink(myinput)
   Dim rgx, uddata
   
   ' Erstat flere linjeskift med afsnitskoder
   Set rgx = Server.createobject("VBScript.RegExp")
   rgx.global = true
   
   rgx.pattern = "\[url]([^\[]+)\[/url]"
   uddata = rgx.replace(myinput, "<a href=""http://$1"">$1")
   
   formatLink = uddata
End Function

Bemærk at ovenstående funktion ikke fungerer korrekt hvis man
angiver http:// i linket (men den kan godt udbygges til det).

Man kan også bruge regex til at lave automatisk linkmarkering
(baseret på genkendelige links, som http://foo.bar, www.foo.bar og
foo@bar.baz)

Så slipper brugerne helt for at skulle markere et link.
--
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

Jens Peter Rosenkvis~ (16-08-2004)
Kommentar
Fra : Jens Peter Rosenkvis~


Dato : 16-08-04 14:11

Jeg prøvede at sætte det ind på min side, men får denne fejlmeddelse:

Server object, ASP 0177 (0x800401F3)
System message, messageid = 0x800401f3


>    ' Erstat flere linjeskift med afsnitskoder

Jeg er ikke sikker på hvad du mener med den linje.


> Bemærk at ovenstående funktion ikke fungerer korrekt hvis man
> angiver http:// i linket (men den kan godt udbygges til det).

Da jeg lavede omtalte tidligere funktion sørger jeg også for, at
http:// blev fjernet fra alle bruger indput før de blev gemt i
databasen for at undgå dette problem.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Torben Brandt (16-08-2004)
Kommentar
Fra : Torben Brandt


Dato : 16-08-04 16:49

Jens Peter Rosenkvist wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg prøvede at sætte det ind på min side, men får denne fejlmeddelse:
>
> Server object, ASP 0177 (0x800401F3)
> System message, messageid = 0x800401f3

Jeg er ikke helt sikker, men tyder det ikke på at du anvender SUN ONE
[1]?

Jeg søgte lidt efter fejlen på Google, og der var problemet at objektet
ikke var installeret på serveren.
Omvendt, så tyder
<URL:http://wwws.sun.com/software/chilisoft/ds_asp.pdf> på at RegExp
burde findes...

Jeg har altså ikke et svar, men det var hvad jeg lige kunne finde ud
af...
Torben

[1] eller hvad ASP-serveren fra SUN hedder...

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (16-08-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 16-08-04 15:06

Jens Peter Rosenkvist skrev:

> Server object, ASP 0177 (0x800401F3)
> System message, messageid = 0x800401f3
>
>
>> ' Erstat flere linjeskift med afsnitskoder
>
> Jeg er ikke sikker på hvad du mener med den linje.

Det er en kommentar. Hvis det er den linje der melder fejl, tyder
det på at du ikke anvender VBscript som script-sprog.

Du kan sagtens slette linjen, men det vil næppe hele problemet.
--
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

Jens Peter Rosenkvis~ (16-08-2004)
Kommentar
Fra : Jens Peter Rosenkvis~


Dato : 16-08-04 16:10

Ved godt det er en kommentar, men forstår ikke hvad du mener med
den.

Fejlen kommer ikke i den linje. Desværre har jeg det problem, at de
fejlmeddelelser jeg får, ikke passer med min fil (altså
linjenummeret). Eksempelvis får jeg i dette tilfælde en fejlmeddelse
i en tom linje, midt inde i det script du skrev ovenover.

Har du nogen idéer til hvad der skal gøres før det vil fungere?

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (16-08-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 16-08-04 20:29

Jens Peter Rosenkvist skrev:

> Ved godt det er en kommentar, men forstår ikke hvad du mener
> med den.

O.k. - nu er jeg med. Og ved nærmere eftersyn kan jeg godt forstå
at du undrer dig over kommentaren. Sagen er at jeg har brugt en
ældre funktion der også brugte regex som skabelon - og det er en
kommentar fra denne der har "overlevet" til den nye funktion.

> Fejlen kommer ikke i den linje. Desværre har jeg det problem,
> at de fejlmeddelelser jeg får, ikke passer med min fil (altså
> linjenummeret). Eksempelvis får jeg i dette tilfælde en
> fejlmeddelse i en tom linje, midt inde i det script du skrev
> ovenover.

Det er irriterende, men hvis linjenummeret ikke bare er valgt
tilfældigt, kan du alligevel bruge det til noget. Prøv at sætte en
linje ind før den linje du regner med giver problemer. Hvis
fejlmeddelelsen nu er "rykket" en linje, ligger fejlen efter den
linje du lige har sat ind. Hvis ikke, skal du længere tilbage.

Ved at indsætte og slette linjer, kan du komme frem til præcis den
rigtige linje.

Umiddelbart vil jeg gætte på at det er Server.CreateObject der
volder problemer. Du kan evt. prøve at erstatte linjen med
følgende:

   Set rgx = New RegExp
--
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

Jens Peter Rosenkvis~ (17-08-2004)
Kommentar
Fra : Jens Peter Rosenkvis~


Dato : 17-08-04 00:21

> Sagen er at jeg har brugt en ældre funktion der også brugte regex
som skabelon - og det er en
> kommentar fra denne der har "overlevet" til den nye funktion.

Helt fint. Jeg vil jo også bare prøve at forstå det jeg laver, men
kunne simpelthen ikke forstå den kommentar. :)


> Ved at indsætte og slette linjer, kan du komme frem til præcis den
> rigtige linje.

Tak! Det skal jeg huske til en anden gang. Desuden ved jeg at
linjenummeret ikke bare er valgt tilfældigt. Fejlen er altid et par
linjer ved siden af. (Og det er ikke bare mig der tæller dårligt, da
min tekst-editor har antallet af linjer stående ude i siden. ;))


> Umiddelbart vil jeg gætte på at det er Server.CreateObject der
> volder problemer. Du kan evt. prøve at erstatte linjen med
> følgende:
>
>    Set rgx = New RegExp

Det løste problemet og nu fungerer det helt fint, så jeg siger tak
igen.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Peter Rosenkvis~ (18-08-2004)
Kommentar
Fra : Jens Peter Rosenkvis~


Dato : 18-08-04 02:45

> Regex er din ven.

Som sagt i mit andet indlæg fik jeg det til at fungere.
Men jeg synes det ser ud til der kan bruges til en del andet. Har du
et link til en side, hvor det bliver forklaret i detaljer hvordan man
kan bruge det?

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (18-08-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 18-08-04 10:00

Jens Peter Rosenkvist skrev:

>> Regex er din ven.
>
> Som sagt i mit andet indlæg fik jeg det til at fungere.
> Men jeg synes det ser ud til der kan bruges til en del andet.

Det har du helt ret i.


> Har du et link til en side, hvor det bliver forklaret i
> detaljer hvordan man kan bruge det?

Hm - ikke lige ved hånden, men en hurtig googling giver bl.a. siden
her: <http://www.webcafe.dk/artikler/perl/regulaereudtryk/>. Den
retter sig mod regulære udtryk i sproget Perl, men syntaksen for
udtrykkene er ens i næsten alle implementationer af regex.

Du kan selv google videre.
--
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

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

Månedens bedste
Årets bedste
Sidste års bedste