Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou tentando capturar valores de um formulário com caracteres especiais via get, mas não estou conseguindo.
Se eu digitar algo como "exemplo'>q", eu só consigo capturar "exemploq" e na url fica algo como "exemplo>q".
Estou tentando capturar com
[inline]nickname_form = request.querystring("nick")[/inline]
E imprimindo com
[inline]response.write nickname_form[/inline]
Onde estou errando?
usa assim:
<%
response.write(Server.HTMLEncode("texto com tag: <img>"))
%>
saída:
texto com tag: <img>
com o HTMLEncode:
The image tag: <img>
>
tente isso:
response.write(System.Web.HttpUtility.HtmlDecode(nickname_form));
Isso é asp.net né? Eu estou usando o clássico
>
usa assim:
<%
response.write(Server.HTMLEncode("texto com tag: <img>"))
%>
saída:
texto com tag: <img>
com o HTMLEncode:
The image tag: <img>
Já tentei isso e não funciona também. Não sei mais o que tentar =/
qual erro ele gera ?
qual erro ele gera ?
Ele simplesmente não mostra esse tipo de saída que vc tá mostrando, não faz nada.
Na verdade o problema maior agora é quando o valor da url tiver & ou # no meio. Alguém sabe como tratar para que não dê problema?
Deixe a string literal, coloque um @ antes:
@"aqui a string"
usa o URLEncode
<a href="page2.asp?nome=Xan+Burzum">aqui</a><%Response.Redirect "page2.asp?ID=11"%>
No exemplo acima, o hiperlink contém uma variável chamada "nome", que tem um valor de "Xan Burzum" (o espaço é codificado como "") Na declaração Response.Redirect, temos uma variável querystring chamada "ID" com um valor de 11. Para realizar uma codificação URL em uma variável (para passar esta variável para outra página) use o seguinte:
<a href="page2.asp?nome=<%= Server.URLEncode(sName) %>">aqui</a><%Response.Redirect "page2.asp?ID=" &_ Server.URLEncode(nID)%>
>
usa o URLEncode
<a href="page2.asp?nome=Xan+Burzum">aqui</a><%Response.Redirect "page2.asp?ID=11"%>
No exemplo acima, o hiperlink contém uma variável chamada "nome", que tem um valor de "Xan Burzum" (o espaço é codificado como "") Na declaração Response.Redirect, temos uma variável querystring chamada "ID" com um valor de 11. Para realizar uma codificação URL em uma variável (para passar esta variável para outra página) use o seguinte:
<a href="page2.asp?nome=<%= Server.URLEncode(sName) %>">aqui</a><%Response.Redirect "page2.asp?ID=" &_ Server.URLEncode(nID)%>
A minha url é montada num arquivo javascript, se eu tentar colocar essa função lá, vai dar erro =/
Não existe uma forma de se fazer o que essa função faz, na mão mesmo?
>
Deixe a string literal, coloque um @ antes:
@"aqui a string"
Entendi o que você disse, mas não entendi como posso implementar isso, pois eu não posso prever quando um &/# serão inseridos...
Jogue a url montada pelo ls numa variável e use o URLEncode
SUPER Resolveu, muito obrigada.
Ficou assim no javascript:
window.location.href = "http://www.meusite.com.br/pasta?send=true&nick="+urlencode(nickname_form);
No asp, eu capturei esse valor e dei replace do símbolo para o código correspondente e cadastrei no banco.
Para mostrar, dei esse replace acima do jeito inverso, substituindo o código pelo símbolo.
Mais resolvido que isso, impossível.
Valeu mesmo, rapazes \o/
/applications/core/interface/imageproxy/imageproxy.php?img=https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-xaf1/v/t1.0-9/10334340_787697431274055_8341556990424277672_n.jpg?oh=52b7bb84f9f4796144153329c5cea4af%26oe=54C306D4%26__gda__=1421613413_e940d9f52ed81f36dad6f3a263781d4b&key=f7b83322b1a673e812b2ab31c8803b6265a5f7a56ee44d73172870a1a25b7197" alt="10334340_787697431274055_834155699042427" />
tente isso:
response.write(System.Web.HttpUtility.HtmlDecode(nickname_form));