a.asp页面中有如下代码:
<%dim c,d
c="参数传递"
c=Server.UrlEncode(c)
%>
<a href="b.aspx?d=<%=c%>">转到</a>
在b.aspx中接收参数d:
<% String s;
s=Request.QueryString["d"];
s=Server.UrlDecode(s);
Response.Write(s);
%>
在页面上显示一个"口"字,我这样编码对不对,望各位大侠帮我看看是什么问题,谢谢
16 个解决方案
#1
去掉c=Server.UrlEncode(c);和s=Server.UrlDecode(s);
看看!
看看!
#2
编码是否采用gb2312了,其实最好用cookies来传递,
先在a.asp:response.cookies["cansu"]="xxx";
再在b.aspx:x=request.cookies["cansu"].value;取出值,试一下吧。
先在a.asp:response.cookies["cansu"]="xxx";
再在b.aspx:x=request.cookies["cansu"].value;取出值,试一下吧。
#3
不行,我都试过了
#4
string dd
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例。
这是怎么回事
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例。
这是怎么回事
#5
顶一下
#6
把web.config 中requestEncoding="utf-8" 改为gb2312以前也有人问这样的问题。应该可以实现的
#7
web.config:
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
#8
第一个页面用了Server.UrlEncode.b页面就不要用Server.UrlDecode了,因为IE会自动转码的
#9
我这样试过了,还是不行啊,大哥们再想想是什么问题啊
#10
这样我也试过了,还是不行
从aspx页面到aspx页面正常
现在关键是从asp页面到aspx页面
大哥们想想是什么问题,有没解决的办法
从aspx页面到aspx页面正常
现在关键是从asp页面到aspx页面
大哥们想想是什么问题,有没解决的办法
#11
还有一点要说明一下:两个页面是在不同的浏览器运行的,a.asp在winwap模拟器中,b.aspx在ie中,但除了中文都可以正常接收
难道就没有解决的办法了
难道就没有解决的办法了
#12
ding
#13
难道就真的没有解决的办法了吗,不就是个参数传递吗
都在asp环境下,或者都在.net环境下都正常,就是在前者向后者就不行了,但两种环境下中文经过编码后是一样的,说明编码方式是相同的,唯一不同就是前者编码后字符串英文字母大写,后者小写。比如:几个中文在前者编码后为%C2%DD%CB%BF%B6%A4%B7%F0%C1%CB,后者为%c2%dd%cb%bf%b6%a4%b7%f0%c1%cb,高手们帮我看看是什么问题,
上面也提到了通过cookies来传递,但两种环境下的语法不同,
比如说在asp环境下写cookies:response.cookies("canshu")="xxx"
在.net环境下这样接收:string dd
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例,如果在一种环境下就没这么多的麻烦
有其他的解决方法吗,多谢了
都在asp环境下,或者都在.net环境下都正常,就是在前者向后者就不行了,但两种环境下中文经过编码后是一样的,说明编码方式是相同的,唯一不同就是前者编码后字符串英文字母大写,后者小写。比如:几个中文在前者编码后为%C2%DD%CB%BF%B6%A4%B7%F0%C1%CB,后者为%c2%dd%cb%bf%b6%a4%b7%f0%c1%cb,高手们帮我看看是什么问题,
上面也提到了通过cookies来传递,但两种环境下的语法不同,
比如说在asp环境下写cookies:response.cookies("canshu")="xxx"
在.net环境下这样接收:string dd
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例,如果在一种环境下就没这么多的麻烦
有其他的解决方法吗,多谢了
#14
zai ding
#15
应该和IE设置有关,改改编号吧
去掉Server.UrlEncode(c);Server.UrlDecode(s);吧!
去掉Server.UrlEncode(c);Server.UrlDecode(s);吧!
#16
Jasonchen82(大森林) 大哥
怎么改编号呀,
去掉Server.UrlEncode(c);Server.UrlDecode(s);这样我试过了,不行
怎么改编号呀,
去掉Server.UrlEncode(c);Server.UrlDecode(s);这样我试过了,不行
#1
去掉c=Server.UrlEncode(c);和s=Server.UrlDecode(s);
看看!
看看!
#2
编码是否采用gb2312了,其实最好用cookies来传递,
先在a.asp:response.cookies["cansu"]="xxx";
再在b.aspx:x=request.cookies["cansu"].value;取出值,试一下吧。
先在a.asp:response.cookies["cansu"]="xxx";
再在b.aspx:x=request.cookies["cansu"].value;取出值,试一下吧。
#3
不行,我都试过了
#4
string dd
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例。
这是怎么回事
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例。
这是怎么回事
#5
顶一下
#6
把web.config 中requestEncoding="utf-8" 改为gb2312以前也有人问这样的问题。应该可以实现的
#7
web.config:
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
#8
第一个页面用了Server.UrlEncode.b页面就不要用Server.UrlDecode了,因为IE会自动转码的
#9
我这样试过了,还是不行啊,大哥们再想想是什么问题啊
#10
这样我也试过了,还是不行
从aspx页面到aspx页面正常
现在关键是从asp页面到aspx页面
大哥们想想是什么问题,有没解决的办法
从aspx页面到aspx页面正常
现在关键是从asp页面到aspx页面
大哥们想想是什么问题,有没解决的办法
#11
还有一点要说明一下:两个页面是在不同的浏览器运行的,a.asp在winwap模拟器中,b.aspx在ie中,但除了中文都可以正常接收
难道就没有解决的办法了
难道就没有解决的办法了
#12
ding
#13
难道就真的没有解决的办法了吗,不就是个参数传递吗
都在asp环境下,或者都在.net环境下都正常,就是在前者向后者就不行了,但两种环境下中文经过编码后是一样的,说明编码方式是相同的,唯一不同就是前者编码后字符串英文字母大写,后者小写。比如:几个中文在前者编码后为%C2%DD%CB%BF%B6%A4%B7%F0%C1%CB,后者为%c2%dd%cb%bf%b6%a4%b7%f0%c1%cb,高手们帮我看看是什么问题,
上面也提到了通过cookies来传递,但两种环境下的语法不同,
比如说在asp环境下写cookies:response.cookies("canshu")="xxx"
在.net环境下这样接收:string dd
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例,如果在一种环境下就没这么多的麻烦
有其他的解决方法吗,多谢了
都在asp环境下,或者都在.net环境下都正常,就是在前者向后者就不行了,但两种环境下中文经过编码后是一样的,说明编码方式是相同的,唯一不同就是前者编码后字符串英文字母大写,后者小写。比如:几个中文在前者编码后为%C2%DD%CB%BF%B6%A4%B7%F0%C1%CB,后者为%c2%dd%cb%bf%b6%a4%b7%f0%c1%cb,高手们帮我看看是什么问题,
上面也提到了通过cookies来传递,但两种环境下的语法不同,
比如说在asp环境下写cookies:response.cookies("canshu")="xxx"
在.net环境下这样接收:string dd
dd=Request.Cookies["canshu"].Value;
运行错误:未将对象引用设置到对象的实例,如果在一种环境下就没这么多的麻烦
有其他的解决方法吗,多谢了
#14
zai ding
#15
应该和IE设置有关,改改编号吧
去掉Server.UrlEncode(c);Server.UrlDecode(s);吧!
去掉Server.UrlEncode(c);Server.UrlDecode(s);吧!
#16
Jasonchen82(大森林) 大哥
怎么改编号呀,
去掉Server.UrlEncode(c);Server.UrlDecode(s);这样我试过了,不行
怎么改编号呀,
去掉Server.UrlEncode(c);Server.UrlDecode(s);这样我试过了,不行