您现在的位置是:首页 > 网站建设常见问答网站建设常见问答
php接收GET方法传入的中文参数乱码深究
2017-06-23【网站建设常见问答】2154 人已围观
简介 这个文章不错,把我烦了半天的一个问题解决了. 殷雯工作室的一个项目里面有个搜索表单使用了js的location=url地址,这个地址...
这个文章不错,把我烦了半天的一个问题解决了. 殷雯工作室的一个项目里面有个搜索表单使用了js的location=url地址,这个地址内用到了中文字符. 在接收页面得到的变量出现了乱码.
那么,是什么导致这个问题的发生呢?
答案是浏览器默认编码在作怪,我们都用的是中文系统,浏览器默认的编码自然也会设置为本地化,例如我自己电脑上的IE和FireFox的默认编码都是gb系列的。
浏览器在请求用户输入的url 时会默认把url中的中文以默认的编码格式发送而不是以页面的编码格式发送,这就是为什么页面中带有中文的链接正常而我们手动输入的链接
会乱码的原因。同理,如果我们把浏览器的默认编码调整为utf-8,那么输入url中的中文则会按照utf-8编码。
除了上面的之外,还有以下情况会出现这种情况:
如果gbk编码的页面生成的地址链接到utf-8的页面,gbk页面的中文是按照gbk的格式编码传送给下个页面,那么utf-8编码接收后肯定会出现乱码。
IIS的url重写模块,重写后的中文编码也是gbk,如果你的页面是utf-8编码,那么重写参数将会失效。像这些情况,我们就需要使用php内置的转码函数来处理编码问题了:
方案1:
$name = iconv(\"gbk\",\"utf-8\",$name); 推荐使用这个方法.
方案2:
mb_convert_encoding($name, \"utf-8\", \"gbk\");
关注宁波网站建设博客,更多精彩分享,敬请期待!
Tags:
很赞哦! ()
下一篇:网站关键词叠加
相关文章
随机图文
2015年最值得学习的十种语言
编程的语言种类凡多,我们要把有限的精力去学习几种实用的语言来当技能。殷雯今天在这里跟大家建议的是大多是网站使用的编程语言,因为桌面程序我们还...企业网站建设应该注意的一些东西
企业网站建设也有很多需要注意的地方。今天我们罗列一些常见的东西和大家说明一下。首先是企业网站的网址被称为“网络商标”,一个与企业名称和形象...为什么说中小型企业越应注重企业网站的建设
在如今这个网络时代,作为最基础的网络应用,企业网站对树立企业形象和品牌、推广产品起着十分重要的作用。从某种意义上讲,一个企业有没有自己...双语网站中的外语翻译有谁提供?
外语版文字翻译由谁来准备? 外语版网站开发并不包含外语文字翻译工作,如果企业客户没有额外委托我们殷雯网络进行网站文案的翻译服务,则外语版的...