首页 >后端开发 >php教程 >在TP3.2中,模板页向控制器GET传值乱码

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

WBOY
WBOY原创
2016-06-23 13:29:211497浏览

在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 重写没有生效


非常感谢!
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn