Just nu i M3-nätverket
Jump to content

Replace mailadress


Christoffer Eklund

Recommended Posts

Christoffer Eklund

hej, om någon person skriver in en mailadress i ett textarea som sparas i en sql databas, kan man då göra någon sorts replace så att det blir en mailto länk.

 

ex nisse@nisse.com - blir då när det skrivs ut på sidan a href="mailto:nisse@nisse.com">

 

Någon som vet?

Link to comment
Share on other sites

Säkert långsam men eventuellt fungerande kod:

 

<%Rem texten = fält från databasen
orden = Split(texten, " ")
For Each ord In orden
If InStr(ord, "@") > 0 Then
If Right(ord, 1) = "." Or Right(ord, 1) = "," Then
mailAddress = Mid(ord, 1, Len(ord) - 1)
Else
mailAddress = ord
End If
%>
<a href="mailto:<%= mailAddress%>"><%= mailAddress%></a> 
<%
Else
Response.Write(ord & " ")
End If
Next

 

 

Link to comment
Share on other sites

Christoffer Eklund

Hej, med lite justeringar fungerar det perfekt.

här är den färdiga koden.

 

<%

Function line1(textstrang)

textstrang = Replace(textstrang, "<br>", "")

line1 = textstrang

end function

Function line2(textstrang)

textstrang = Replace(textstrang, vbcrlf, "<br>")

line2 = textstrang

end function

texten = trim(gpd("strText"))

orden = Split(texten, " ")

For Each ord In orden

If InStr(ord, "@") > 0 Then

 

If Right(ord, 1) = "." Or Right(ord, 1) = "," Then

 

mailAddress = Mid(ord, 1, Len(ord) - 1)

Else

mailAddress = ord & left(ord, " 1")

End If

response.write("<a href='mailto:" & line1(line2(mailAddress)) & "'>" & mailAddress & "</a>")

 

Else

Response.Write(nyrad(trim(ord)) & " ")

End If

Next

%>

 

 

 

 

Link to comment
Share on other sites

eller så löser du det med regular expression:

 

	Function FormatText( sText )

	sText = Replace( sText, "<", "&lt;" )
	sText = Replace( sText, ">", "&gt;" )

	Set oRegExp = New RegExp
	oRegExp.Global = True
	oRegExp.IgnoreCase = True

	'e-mail
	oRegExp.Pattern = "([a-z]+[\w\.-_]*\@[a-z0-9]+((\.|-)[a-z0-9]+)*\.[a-z]{2,3})"
	sText = oRegExp.Replace(sText, "<A href='mailto:$1'>$1</A>")

	'internet-adress
	oRegExp.Pattern = "((http://|https://|ftp://)\S+(\?\S*)?[^\)\s])"
	sText = oRegExp.Replace( sText, "<A href='$1' target='_blank'>$1</A>" )

	sText = Replace( sText, vbNewLine, "<BR>" )

	FormatText = sText

End Function

 

 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...