Avatar billede mikkeljans Nybegynder
15. december 2002 - 10:47 Der er 5 kommentarer og
2 løsninger

Count Function

Jeg har en function på min side http://www.maya3d.dk/links/tutorials der siger:

If Request.QueryString("Link") <> "" Then
    strSQL = "UPDATE tutorials Set Hits = Hits + 1 WHERE [Id] = " & Request.QueryString("Id")
    Conn.Execute(strSQL)
    Response.Redirect(Request.QueryString("Link"))
End If

Den tæller hvor mange gange man har trykket på et link.

Problemmet er at ikke virker på Links som:

http://enemy.mesmer.com/moebius/FMPro?-DB=article&-Format=free_tutorial_read.html&-Op=eq&ProductName=Low%20Poly,%20High%20Powered%20Gun%20(Maya)&-SortField=LearningOrder&-SortOrder=ascend&-Max=1&-Skip=0&-Find

Den kommer kun til:
http://enemy.mesmer.com/moebius/FMPro?-DB=article

og det er sikkert fordi et & ligger der.

Hvordan undgår jeg det og fortæller i ASP at den ikke skal tage & som en ny værdig men bare som et symbol.?
Avatar billede Slettet bruger
15. december 2002 - 10:50 #1
Husk at bruge Server.URLEncode(link) på den side hvor du danner det link der skal redirectes til. Ellers vil den tage ? og & som parametre i en anden sammenhæng.
Avatar billede mikkeljans Nybegynder
15. december 2002 - 10:53 #2
Mener du at Response.Redirect(Request.QueryString("Link")) skal byttes ud med Server.URLEncode(link) ?
Avatar billede mikkeljans Nybegynder
15. december 2002 - 10:56 #3
Koden som den kører igennem databasen ser sådan her ud:

Response.Write "<td> <a href=" & Request.ServerVariables("SCRIPT_NAME") & "?Id=" & rs("Id") & "&Link=" & rs("Link") & ">" & rs("Title") & "</a> </td>"
Avatar billede Slettet bruger
15. december 2002 - 11:02 #4
Sådan her:

Response.Write "<td> <a href=" & Request.ServerVariables("SCRIPT_NAME") & "?Id=" & rs("Id") & "&Link=" & Server.URLEncode(rs("Link")) & ">" & rs("Title") & "</a> </td>"
Avatar billede _just4fun_ Nybegynder
15. december 2002 - 11:04 #5
man skal normalt indkapsle strenge med mellemrum i ""'er, men du skal også encode indholdet som magik siger.->

myParameters = "?Id=" & rs("Id") & "&Link=" & Server.URLEncode(rs("Link"))

Response.Write "<td><a href=""" & Request.ServerVariables("SCRIPT_NAME") & myParameters & """>" & rs("Title") & "</a> </td>"
Avatar billede mikkeljans Nybegynder
15. december 2002 - 11:08 #6
Doh, jeg fandt selv en løsning ;)..

If Request.QueryString("Link") <> "" Then
    strSQL = "UPDATE tutorials Set Hits = Hits + 1 WHERE [Id] = " & Request.QueryString("Id")
    Conn.Execute(strSQL)
    strSQL = "select * from tutorials where [ID] = " & Request.QueryString("Id")
    Set rs = Conn.Execute(strSQL)
    Response.Redirect rs("Link")
End If

Virker også

Tnx
Avatar billede Slettet bruger
15. december 2002 - 11:09 #7
Selv tak  :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester