解决ASP中QueryString传中文的问题今天写程序的时候,发现用QueryString直接传中文不行,后来研究了下,问题解决了,方法还超级简单。
一句话,把你要传的中文用server.URLEncode()函数处理一下就可以了,其他的什么都不用变化。
例子:
传送页面(用一个超链接,目标接收页):------------------------------------------------------------
<%
city="上海"
%>
<a href="test.asp?city=<%=
server.URLEncode(city)%>">测试页面</a>
你原来是这样写的,这里的city的值是个中文,注意区别
<a href="test.asp?city=<%=city%>">测试页面</a>接受页面(和原来的一样):-------------------------------------------------------------
<%
city=request("city")
response.write(city)
%>
打印出来的就是 上海
ASP中的URLEncode是对中文编码的函数,奇怪的是,ASP会在接收的时候自动将编码转换成中文,而不需要调用任何函数。也就是说,URLEncode是不需要反函数的。不过,ASP.Net中好象有反函数叫URLDecode,这里就不介绍了。
至此,问题解决。
CoffeeCat
2005年12月10日