Asa Medlem sedan dec. 2001 1 860 inlägg Frågan 6 aug. 2003 10:38 #1 Har lite kod där regexp ska byta ut en kod mot en annan men nu vill jag att det som står mellan taggen ska kolla i databasen vilket id den användaren har och skriva ut det i regExptaggen. Hur gör jag?
regExp.Pattern = "\[chip](.*)\[/chip\]"
Set RS=Conn.Execute("Select * From " & SqlName & "_users Where anvnamn='" & $1 & "'")
strText = regExp.Replace(strText, "<a href=""krypin.asp?id=" & RS("userId") & """>$1</a>")
Denna funkar ej :(
Engine^ Medlem sedan dec. 2000 3 887 inlägg Jag chansar lite grann på något här...
regExp.Pattern = "\[chip[b]\[/b]](.*)\[/chip\]"
strUser = regExp.Replace(strText, "$1")
Set RS = Conn.Execute("SELECT userID FROM " & SqlName & "_users WHERE anvnamn = '" & strUser & "'")
If Not RS.EOF Then
strText = "<a href=""krypin.asp?id=" & RS("userID") & """>" & strUser & "</a>"
Else
strText = "<i>Har inget krypin...</i>"
End If
Förhoppningsvis så kan du jobba vidare med detta.
Asa Medlem sedan dec. 2001 1 860 inlägg verkar inte funka nå :/ Den sätter all kod i presentationen om strUser på nå vis.
Engine^ Medlem sedan dec. 2000 3 887 inlägg Vad menar du egentligen med "Den sätter all kod i presentationen om strUser på nå vis" ?
Vad innehåller strText? Kan den innehålla många användarnamn eller missuppfattar jag något här?
Asa Medlem sedan dec. 2001 1 860 inlägg Jag har mer kod...Dumt av mig å inte visa... All kod utan din.
Function Link(strText)
strText = Server.HTMLEncode(strText)
Set regExp = New regexp
regExp.Global = true
regExp.IgnoreCase = true
'regExp.Pattern = "([url]http://[/url]|www)([\S]*)"
'strText = regExp.Replace(strText,"[url]$1$2[/url]")
regExp.Pattern = "([url]ftp://[/url])([\S]*)"
strText = regExp.Replace(strText,"<a href=""$1$2"" target=""_blank"" class=""egen"">$1$2</a>")
regExp.Pattern = "([\S]*@[\S]*[.se|.com|.nu|.net|.org])"
strText = regExp.Replace(strText,"<a href=""mailto:$1"" class=""egen"">$1</a>")
regExp.Pattern = "([.|,|!|?|:|;|)|\|&]]*)</a> "
strText = regExp.Replace(strText,"</a>$1 ")
regExp.Pattern = "\[color=(.*?)\]"
strText = regExp.Replace(strText,"<font color=""$1"">")
regExp.Pattern = "(\[\/color\])"
strText = regExp.Replace(strText,"</font>")
regExp.Pattern = "\[img](.*)\[/img\]"
strText = regExp.Replace(strText, "<img src=""$1"" OnLoad=""CheckSize(this);"">")
regExp.Pattern = "\[(b|/b|i|/i|u|/u|hr|center|/center)\]"
strText = regExp.Replace(strText,"<$1>")
regExp.Pattern = "\[url](.*)\[/url\]"
strText = regExp.Replace(strText, "<a href=""$1"" target=""_blank"" class=""egen"">$1</a>")
regExp.Pattern = "\[url=(.*?)\](.*)\[/url\]"
strText = regExp.Replace(strText, "<a href=""$1"" target=""_blank"" class=""egen"">$2</a>")
strText = Replace(strText, "http://http://", "http://")
strText = Replace(Trim(strText),vbCrLf, "<br>")
For i = 1 To AntalSmiley
strText = Replace(Trim(strText),"[smiley_" & i & "]", "<img src=""gfx/emoticons/" & i & ".gif"">")
Next
Link = strText ' Skriver ut texten, uppdelad och fin!
End Function