Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Touche

Pegar a ultima URL + a QueryString

Recommended Posts

Consegui implementar no meu sistema esse detalhe de no caso de acesso negado ele pega a página atual atraves do Request.ServerVariables("URL") funcionou legal porem quando essa url vem com querystring ele ignora e coloca so ate o .aspTem outra forma de fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui implementar no meu sistema esse detalhe de no caso de acesso negado ele pega a página atual atraves do Request.ServerVariables("URL") funcionou legal porem quando essa url vem com querystring ele ignora e coloca so ate o .aspTem outra forma de fazer isso?

Tem sim..Existe uma outra variável de servidor que retorna justamente o que foi passado por querystring.Request.ServerVariables("QUERY_STRING")e a outra:Request.ServerVariables("SCRIPT_NAME") retorna o nome da página.Depois, basta você concatenar as duas com o "?" e você obterá o endereço completo da página.AbraçosCassiano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Cassiano, era isso mesmo eu tinha visto esse codigo no que o DW gera porem nao tinha entendido...Só mais uma coisa cara: Quando eu retorno a url pra pagina de acesso negado, eu pego ela assim:negado.asp?pagina=/teste.asp?cod=2&teste=3&teste2=4ai da problema porque ele so considera ate o primeiro & o restante ele pega como se fosse complemento da QS ?paginavocê saberia como resolver isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Cassiano, era isso mesmo eu tinha visto esse codigo no que o DW gera porem nao tinha entendido...Só mais uma coisa cara: Quando eu retorno a url pra pagina de acesso negado, eu pego ela assim:negado.asp?pagina=/teste.asp?cod=2&teste=3&teste2=4ai da problema porque ele so considera ate o primeiro & o restante ele pega como se fosse complemento da QS ?paginavocê saberia como resolver isso?

Bom, nesse caso eu acho que o único jeito é você dar um replace nos caracteres ? e & por alguma coisa, e substituir de volta na página de erro. Entendeu??Tipo:No local onde você verifica o acesso, e recupera a querystring, você dá o primeiro replace, e a string vai ficar:Replace(url, "?", "_interrogacao")Replace(url, "&", "_ecomercial")negado.asp?pagina=/teste.asp_interrogacao_cod=2_ecomercial_teste=3_ecomercial_teste2=4Depois na outra você faz o replace de volta, e vai ficar assim:Replace(url, "_interrogacao", "?")Replace(url, "_ecomercial", "&")negado.asp?pagina=/teste.asp?cod=2&teste=3&teste2=4AbraçosCassiano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele ficou dando um erro no replace dizendo que eu nao podia chamar um sub dentro de parentese :unsure:

 

Eu ai comecei a inventar aqui e consegui fazer dando um HTMLEncode na url e na hora de redirecionar eu usava uma função de HtmlDecode que achei na net ;)

 

Response.Redirect("../capa/negado.asp?pagina="&Request.ServerVariables("SCRIPT_NAME")&"?"&Server.URLEncode(Request.QueryString))

if Request.Form("pagina") <> "" then	url = HTMLDecode(Request.Form("pagina"))Response.Redirect(url)

Função HTML DECODE

 

http://www.aspnut.com/reference/encoding.asp

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele ficou dando um erro no replace dizendo que eu nao podia chamar um sub dentro de parentese :unsure: Eu ai comecei a inventar aqui e consegui fazer dando um HTMLEncode na url e na hora de redirecionar eu usava uma função de HtmlDecode que achei na net ;)

Response.Redirect("../capa/negado.asp?pagina="&Request.ServerVariables("SCRIPT_NAME")&"?"&Server.URLEncode(Request.QueryString))
if Request.Form("pagina") <> "" then	url = HTMLDecode(Request.Form("pagina"))Response.Redirect(url)
Função HTML DECODEhttp://www.aspnut.com/reference/encoding.asp http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Valeu
Show de bola... ficou melhor ainda então!! =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.