Hej! <code> Hej igen! Hej igen Thomas... Det var ju kul att höra att funktionen fungerade bra... Hejreplace br, www. http, @, pdf
jag har en aktuelltsida där användaren kan lägga in en rubrik och text som lagras i en accessdatabas. Jag har en replace när sidan visas som gör enter till br.
Frågan som lyder är:
Jag skulle vilja att när användaren skriver in tex www, http, @ eller .pdf i textarean så skall dom automatiskt bli klickbara.
databasen har följande fält:
fltid, fltdatum, fltrubrik och flttext.
Är det någon som har en kodsnutt att komma med skulle jag bli väldigt tacksam.
sidan skall visa de sex senaste nyheterna på sidan och dom funktioner jag har prövat fungerar i och för sig men jag får samma textfält på alla poster när jag loopar igenom databasen. Dvs rubrikerna syns men jag fär samma textfält på alla.
Så här ser koden ut:
<%texten = Replace(Rs("flttext"),VbCrLf,"<br>")%>
<% urlify(texten) %>
<%
function urlify(var)
Dim var_split(10000)
BSPACE = " "
varSplit = Split(var, BSPACE)
output = ""
for each WORD in varSplit
If instr(WORD, "<http://>") <> 0 Then
WORD = "" & WORD & ""
ElseIf instr(WORD, "www") <> 0 Then
WORD = "" & WORD & ">" & WORD & ""
ElseIf instr(WORD, "@") <> 0 Then
WORD = "" & WORD & ">" & WORD & ""
End If
'EndIf
'EndIf
output = output & WORD & " "
next
texten = output
end function %>
Hämtar ut datan med detta:
<%= texten %>
tillägget med PDF saknas, vet ej hur jag ska göra, samt så kommer samma text hela tiden under rubrikerna.
MickeSv: replace br, www. http, @, pdf
<%
Function urlify(var)
Dim strText
strText = ""
varSplit = Split(var, " ")
For i = LBound(varSplit) To UBound(varSplit)
If Left(Trim(varSplit(i)), 7) = "http://" Then
varSplit(i) = "" & varSplit(i) & ""
ElseIf Left(Trim(varSplit(i)), 3) = "www" Then
varSplit(i) = "" & varSplit(i) & ""
ElseIf InStr(varSplit(i), "@") <> 0 Then
varSplit(i) = "" & varSplit(i) & ""
End If
strText = strText & varSplit(i) & " "
Next
urlify = Trim(strText)
End Function
%>
<%
Dim cArtiklar
cArtiklar = 0
Do Until cArtiklar = 6 Or Rs.EOF
Response.Write Rs("fltrubrik") & "<br>"
Response.Write urlify(Replace(Rs("flttext"),VbCrLf,"<br>"))
Rs.MoveNext
cArtiklar = cArtiklar + 1
Loop
%>
</code>
Det här borde hjälpa dig...
Den översta kodsnutten är funktionen som fixar till allt, den nedre är hur du anropar funktionen...
Frågor?
Det är bara att fråga om du undrar över något...
Har inte testat koden men jag tror att den kommer att fungera...
För att fixa pdf grejen måste du veta hela sökvägen till den...
/ThomasSv: replace br, www. http, @, pdf
Tack Thomas för kodsnutten. Jag skall testa den ikväll när jag fått i säng buspojken min...Sv: replace br, www. http, @, pdf
Ville bara meddela att det funkar superbt.
Tusen tack
Du kan ju besöka min sida som inte innehåller något med asp och databaser ännu men det kommer.
www.topofeurope.com/sm2kal
mvh
MickeSv: replace br, www. http, @, pdf
Skrev den nämligen helt från huvet utan hjälp av något program (notepad då)... Och som jag skrev så testade jag inte den, men den bygger ju på din grundkod... Jag ska kolla in din sida nu... Om du vill kan du ju kolla in webbtidningen som jag administrerar på www.eurocitynet.nu /ThomasSv: replace br, www. http, @, pdf
Hittade en gammal tråd som tog upp ett problem jag har haft.
Testade koden ovanför och fick ett litet fel.
För när den skapar den klickbara mail-koden (a mailto: osv)
så tar den även med ett <br> som finns precis innan.
Kan inte hitta vad som ställer till problemet.
Vet ni??
//Toga