webForumDet fria alternativet

Länkar

ASP

6 svar · 179 visningar · startad av PlayerOne

Medlem sedan maj 200062 inlägg
Frågan#1

Jag skulle vilja att http-adresser som hämtas från en databas också blir länkade när de visas på sidan. Alltså, om nån skriver in en länk i tex ett forum ska den bli länkad när den visas på sidan.
Det finns nån funktion för det i Mikrodatorns forum på IDG men dem verkar inte använda det där. Nån som har gjort det eller vet hur man gör?

Medlem sedan dec. 19998 577 inlägg
#2

En funktion:

'----------------------------------------------------
' * ConvertLinks *
' Fixa så att länkar blir länkade i HTML-koden.
' Nedanstånde kod kommer från [url="http://www.ojmnet.com"]www.ojmnet.com[/url] 
'----------------------------------------------------
Function ConvertLinks(svalue)
svalue = ConvertLinksHREF(svalue, "http://")
svalue = ConvertLinksHREF(svalue, "ftp://")
svalue = ConvertLinksHREF(svalue, "news://")
svalue = ConvertLinksHREF(svalue, "mailto:")
ConvertLinks = svalue
End Function

Function ConvertLinksHREF(svalue, sHREF)
Dim iPos1, iPos2, sTemp, sTemp1, sTemp2
iPos2 = 1
iPos1 = InStr(1, svalue, sHREF, 1)
Do While iPos1 > 0
iPos2 = FindLinkEnd(svalue, iPos1 + Len(sHREF))
If iPos2 > 0 Then
sTemp1 = Mid(svalue, iPos1, iPos2 - iPos1)
sTemp2 = "<A HREF=" & Chr(34) & sTemp1 & Chr(34) & ">" & sTemp1 & "</A>"
svalue = Left(svalue, iPos1 - 1) & sTemp2 & Mid(svalue, iPos2)
iPos2 = iPos1 & Len(sTemp2) + 1
Else
iPos2 = iPos1 + Len(sHREF)
End If
iPos1 = InStr(iPos2, svalue, sHREF, 1)
Loop
ConvertLinksHREF = svalue
End Function

Function FindLinkEnd(svalue, iPos1)
Dim iPos2, i, iLen, iTempPos
Dim sValidChars
sValidChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890-.@/"
iLen = iPos1 + Len(Mid(svalue, iPos1)) - 1
End Function

------------------
Det prasslas i säven
www.webeye.nu

[Redigerat av Vide den 20 jul 2000]

Medlem sedan maj 200062 inlägg
#3

Precis, det är den funktionen jag använder, men hur gör jag för att anropa den på min sida? Jag ska väl göra det på sidan där jag visar datan från databasen?
Så här gör jag nu, men det funkar inte
<%= convertlinks(RS("Inlägg"))%>

Medlem sedan dec. 19998 577 inlägg
#4

Hmm, jag har inte använt funktionen själv, och märker nu att den är uppdelad i tre funktioner... antagligen måste du använda alla tre...

------------------
PC-älskare i 4:e dimensionen
www.webeye.nu

Medlem sedan apr. 20007 588 inlägg
#5

Nej, man skall bara köra ConvertLinks().

PlayerOne; Rätt, du ska kunna köra satsen <%= convertlinks(RS("Inlägg"))%> och om RS("inlägg") innehåller text med URL'er så blir dom länkade. Antagligen ligger felet någon annanstans i din kod, visa gärna lite mer av koden.

------------------

1010011010 - The binary number of the beast

Medlem sedan maj 200062 inlägg
#6

Jag var nog lite trött när jag testade, det funkade visst... :)

Medlem sedan apr. 20007 588 inlägg
#7

Bra! :)

------------------

1010011010 - The binary number of the beast

258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)