以文本方式查看主题

-  ╋艺 镇╋  (http://zyzsky.com/bbs/index.asp)
--  ┣◇网站建设&Web语言  (http://zyzsky.com/bbs/list.asp?boardid=4)
----  ASP UTF-8 链接传递中文信息出现乱码  (http://zyzsky.com/bbs/dispbbs.asp?boardid=4&id=2074)

--  作者:admin
--  发布时间:2010/8/13 22:23:15
--  ASP UTF-8 链接传递中文信息出现乱码

两个页面都是UTF-8的,第一个页链接上有传递中文过去,第二个页面负责接收,收完后发现乱码,如果全部转成GB2312就没问题,

用Request.QueryString[]获取的就是其中的参数,不要直接传递汉字就好。。。

所以传递的时候比如说带个英文或者什么的一起传递,接收时除去英文就可以正常传递了。(此句似乎不正确,呵呵,传递好像还是有问题)

还有一个方法是在传递前将中文转码,然后在接受时转回来,应该也可以

UrlEncode

  将字符串以 URL 编码。

ASP中的用法:

  Server.URLEncode("内容")

  例:

  <%

  response.write Server.UrlEncode("七七IT中国")

  %>

  PHP中的用法:

  urlencode("内容");

  例:

  <?

  echo urlencode("七七IT中国");

  ?>

  JSP中的用法:

  URLEncoder.encode("七七IT中国");

  <%

  java.net.URLEncoder.encode("七七IT中国");

  %>



UrlDecode
  对字符串进行URL解码。
本函数对字符串进行URL解码。例如通过urlencode编码后的字符串,可通过UrlDecode进行解码。
  对Url路径加码的函数是UrlEncode 用法相反,和UrlDecode是一致对应的.

但是在ASP下加码成功,但是解码失败,好像没有解码这个语句UrlDecode

asp 里面没有urldecode函数,好象aspx里有吧


JS的编码解码是
可以使用 unescape() 对 escape() 编码的字符串进行解码。

<script type="text/javascript">

document.write(escape("Visit W3School!") + "<br />")

</script>

我自己写的
<script type="text/javascript">
var pinm=document.getElementById("pinm").value;   获取PINM,但是好像没写对
var pin=escape(pinm);          编码时括号内部PINM不知道该怎么表示,要加双引吗?
document.write (pinm);         这句应该对的
</script>


在GB2312下,中文传递没有问题!
[此贴子已经被作者于2010-8-13 23:31:11编辑过]