PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

URL接收的参数乱码,但是本土是正常的

原创
2016-06-13 12:57:35 836浏览

URL接收的参数乱码,但是本地是正常的

本帖最后由 cg20 于 2012-10-14 22:54:57 编辑 http://localhost/xs7k/search/author-龙.html 就是正常的
这里有URL重写对应的为xs7k/search/index.php?type=$1&key=$2
本地获取key就是正常的,以前用bluehost的主要也是正常的

服务器上就不行了http://www.xs7k.com/search/author-龙.html,如这个。

今天换成国内的了iis的,能数只要是中文的就出错"??"显示成这个样子,请问有没有什么办法解决。

用$_REQUEST或$_GET都一样的。
------解决方案--------------------
$url="http://localhost/xs7k/search/".UrlEnCode('author-龙').".html";
先把中文编码一下再传$url这个变量试试.
如果urlencode这个编码不行的话你就用Base64_Encode编码,,不过用Base64_Encode的话需要用对应的解码函数解码一下才行.UrlEnCode就没有那么麻烦了.
------解决方案--------------------
不同浏览器传输中文的时候,字符集不同。有GBK的,也有UTF-8的。用urlencode一下,会比较妥当。
------解决方案--------------------
补充,我说的是在地址栏传输中文。
------解决方案--------------------
还是1楼的方法,你就直接取值的时候取转换完的值,比如php:alt="urlencode('龙')"JS:attr(alt)
------解决方案--------------------
引用:
我的这一句是从JS转过去的http://localhost/xs7k/search/author-龙.html

location.href='//m.sbmmt.com/m/faq/../search/'+type.options[type.selectedIndex].value+'-'+key.value+'.html';

在这里如果对key.value进行编码,PHP的不能用在这里的吧?
尝试在后台输出key.vlaue的值试试
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。