用server.URLencode编码后,怎么变回来?

cadem 2003-08-23 11:02:16
用server.URLencode编码后的URL地址,用什么方法变回正常?
...全文
88 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
iwodgirl 2003-08-23
  • 打赏
  • 举报
回复
to shines(Othelloing) :

我是初学,在做留言本时,如不想让别人填写的脚本来破坏我的服务器,或页面显示,就要用到你的这种方法,但想是想用,就是不会,你的程序很好。

可不可以麻烦你,把你的程序加上一些注解,让我们初学的能看懂多一点。
shines77 2003-08-23
  • 打赏
  • 举报
回复
哪一句错?eval()函数? 试试下面

dim str
str="%5C%D6%D0%B9%FA"

Response.Write URLDecode(str)
cadem 2003-08-23
  • 打赏
  • 举报
回复
shines(Othelloing) 的方法有编译错误
cadem 2003-08-23
  • 打赏
  • 举报
回复
response.Redirect request("from"),from是server.URLencode的地址,但出现404错误。
Brookes 2003-08-23
  • 打赏
  • 举报
回复
vbs里没有办法,js里有escape方法,可以试一下
shines77 2003-08-23
  • 打赏
  • 举报
回复
自己写一个函数,如下:

dim str
str="%5C%D6%D0%B9%FA"

URLDecode(str)

function URLDecode(enStr)
dim deStr,strSpecial
dim c,i,v
deStr=""
strSpecial="!""#$%&'()*+,/:;<=>?@[\]^`{|}~%"
for i=1 to len(enStr)
c=Mid(enStr,i,1)
if c="%" then
v=eval("&h"+Mid(enStr,i+1,2))
if inStr(strSpecial,chr(v))>0 then
deStr=deStr&chr(v)
i=i+2
else
v=eval("&h"+Mid(enStr,i+1,2)+Mid(enStr,i+4,2))
deStr=deStr&chr(v)
i=i+5
end if
else
if c="+" then
deStr=deStr&" "
else
deStr=deStr&c
end if
end if
next
URLDecode=deStr
end function
pilicat 2003-08-23
  • 打赏
  • 举报
回复
你直接使用就可以了,浏览器以及WEB服务器均能识别的!
shines77 2003-08-23
  • 打赏
  • 举报
回复
sorry, 上面漏了一个“.”


strSpecial="!""#$%&'()*+,/:;<=>?@[\]^`{|}~%"

该为:
strSpecial="!""#$%&'()*+,/:;<=>?@[\]^`{|}~%."

就行了。。。
cadem 2003-08-23
  • 打赏
  • 举报
回复
to shines(Othelloing) :
用str="%5C%D6%D0%B9%FA"实验不会错,但把test.asp?test=test&test1=test1这个用server.URLencode编码后,试验九出错。

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧