Home  >  Article  >  Backend Development  >  在TP3.2中,模板页向控制器GET传值乱码

在TP3.2中,模板页向控制器GET传值乱码

WBOY
WBOYOriginal
2016-06-23 13:29:211444browse

在TP3.2中,模板页遍历出来的数据汉字显示正常,可是在一个超链接上向控制器传汉字

<td <php>echo display(CONTROLLER_NAME.'/editrule');</php> >    <a href="__URL__/editrule/id/{$v['id']}/depname/{$v['depname']}/posname/{$v['posname']}/    navTabId/{:CONTROLLER_NAME}" data-toggle="doajax" data-confirm-msg="确定要操作吗?">    <php>M('auth_group_access')->where(array("group_id"=>0))->delete();    if (M('auth_group_access')->where(array("uid"=>$v['id']))->count() > 0){echo "有";}else{echo "无";}    </php></a></td>

$v['depname']是汉字,在接收的控制器上打印出来是乱码。我在控制器上加上header设置编码utf-8也没用


回复讨论(解决方案)

$v['depname']是汉字???
那就是你的 url 是含有汉字的喽,除了 IIS 可以在 url 路径中使用汉字外,其他的 web 服务器都是不允许 url 中含有汉字的

$v['depname']是汉字???
那就是你的 url 是含有汉字的喽,除了 IIS 可以在 url 路径中使用汉字外,其他的 web 服务器都是不允许 url 中含有汉字的


可是我测试可以啊,在工作目录下建个html文件和php文件,在html文件中写个超链接带汉字过去传到php文件,都没问题啊。而且我写的代码之前上线都可以的,换了个服务器后就不行了

汉字作为 url 参数是可以的,作为路径是不可以的
我前面已经说了,你不相信我也没办法
个别服务器测试通过,并不具备普遍意义。你不也  换了个服务器后就不行了 吗

汉字作为 url 参数是可以的,作为路径是不可以的
我前面已经说了,你不相信我也没办法
个别服务器测试通过,并不具备普遍意义。你不也  换了个服务器后就不行了 吗


你的意思是我把超链接改成就行了把?呵呵,不好意思啊,对参数和路径有点混淆

对于路径和参数,是这个意思

可能根本的原因是你那另一台服务器的 url 重写没有生效

对于路径和参数,是这个意思

可能根本的原因是你那另一台服务器的 url 重写没有生效


非常感谢!
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn