<% Dim nr_clicks Call AbreConexao() codigo=URLDecode(Request.QueryString("cod")) If IsNumeric(codigo) Then Set Tabela=Conexao.Execute("SELECT click,url,site FROM tbl_BANNERS USE INDEX(Primary) WHERE codigo="&codigo) If Not(Tabela.EOF) Then nr_clicks=Tabela.Fields("click") site=Tabela.Fields("site") url=Tabela.Fields("url") Else nr_clicks=1 Response.Write "Link Inválido" Response.End End If If IsNull(nr_clicks) Or IsEMpty(nr_clicks) Or nr_clicks="" Then nr_clicks=1 Else nr_clicks=CLng(nr_clicks)+1 End If Conexao.Execute("UPDATE tbl_banners USE INDEX(Primary) SET click="&fl(nr_clicks)&", ultclick='"&SQLDate(date)&" "&time&"' WHERE codigo="&codigo) Call FechaConexao() If IsNull(url) Or IsEmpty(url) Or url="" Then Response.Write "Link Inválido" Response.End Else Response.Redirect UrlDecode(url) End If Else Response.Write "Link Inválido" End If Function URLDecode(ByVal Texto) On Error Resume Next 'Declarações Dim Posicao Dim Posicao2 Dim objStream Dim Retorno 'Substitui '+' por espaço Texto = Replace(Texto, "+", " ") '........................................... 'Utilizando ADODB.Stream (caso seja possível) '........................................... Set objStream = Server.CreateObject("ADODB.Stream") If Err = 0 Then On Error Goto 0 objStream.Type = 2 'String objStream.Open 'Substitui todos %(chars) pelos caracteres correspondentes Posicao = InStr(1, Texto, "%") Posicao2 = 1 Do While Posicao > 0 objStream.WriteText Mid(Texto, Posicao2, Posicao - Posicao2) + Chr(CLng("&H" & Mid(Texto, Posicao + 1, 2))) Posicao2 = Posicao + 3 Posicao = InStr(Posicao2, Texto, "%") Loop objStream.WriteText Mid(Texto, Posicao2) 'Lendo o texto do objeto stream objStream.Position = 0 Retorno = objStream.ReadText 'Libera o objeto objStream.Close 'Destruindo o objeto Set objStream = Nothing '........................................... 'Com este método a varredura dos dados é mais lenta e não é recomendável para 'strings com mais de 100kb. '........................................... Else On Error Goto 0 Posicao = InStr(1, Texto, "%") Do While Posicao>0 Texto = Left(Texto, Posicao - 1) + Chr(Clng("&H" & Mid(Texto, Posicao + 1, 2))) + Mid(Texto, Posicao + 3) Posicao = InStr(Posicao + 1, Texto, "%") Loop Retorno = Texto End If 'Retornando a função URLDecode = Retorno End Function %>