我在服务端用的javascript。
之前看过很多资料,说是utf-8与gb2312得问题,只是他们都是用java,我用他们的函数要错的。
我在客服端用xmlhttprequest 发送含有中文的内容,方法是post,当然先对哪些中文用了encodeURI 或者encodeURLComponent编码了。
比如是:前面的省掉,infor="retitle=标题"; send(encodeURI(infor));
然后在服务端接到数据后用
re_title=decodeURI(request.Form("retitle"));
把它保存到数据库中,然后到数据库中看或者输出到页面,都是乱码。
有个事情很奇怪,我之前没有使用xmlhttprequest的Post,直接用表单上的post发送数据,却是正常的;然后我这次使用了xmlhttprequest的Post后,不光用它是乱码,连原来用表单的post也变乱码了。
在xmlhttprequest的Post 里设置了这些内容。
xmlhttp6.setRequestHeader("Content-Length",content.length);
xmlhttp6.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");
那个send 前面的xmlhttp..忘记打了。
本来想用get算了,因为之前都没问题;可是刚刚发现,连get也变乱码了,快崩溃了。
事实上,我对这些编码根本没有去设置过。我都不知道怎么回事
我自己找到解决的方法了,真是煞费苦心,对那些中文字符进行两次encodeURI()即可以搞定,之前,只用一次,我追踪变量才发现,中文字符根本没有被编码,所以出错。
asp post方法 的中文乱码问题
答案:2 悬赏:50
解决时间 2021-03-15 06:19
- 提问者网友:他的思颖
- 2021-03-14 14:18
最佳答案
- 二级知识专家网友:一池湖水
- 2021-03-14 14:53
你就用gb2312不就行了 我用ASP+access 用GB2312从没出现过乱码
全部回答
- 1楼网友:一个很哇塞的汉子
- 2021-03-14 16:30
你是在使用dreamweavr做这样那个得页面吧。
你在界面里面 编辑 里面,找到最下面得首选参数,找到新建文档,然后将默认编码选择为gb2312,然后再新建页面,做你得页面程序。一般般就不会出现类似得问题了。
已经做好得程序,
这样修改一下
< %@language="vbscript" codepage="65001"%>
改成 <%@language="vbscript" codepage="936"%>
改成
这样ok了
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯