首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >涉及查询的Codeigniter路由的问题

涉及查询的Codeigniter路由的问题
EN

Stack Overflow用户
提问于 2009-11-28 07:49:47
回答 3查看 1.2K关注 0票数 0

当有一个查询时,我在使用CodeIgniter路由时遇到了一些问题(在?之后的东西)在URI中。我知道将查询替换为CI中的路由是一种很好的做法,但我正在导入一个预制的留言板,该留言板已经完成了查询的所有操作。这是我的路线:

$route'messageboard/:any‘= "messageboard/index";

在这种情况下,Any指的是脚本名称。因此,如果它是messageboard/admin.php,我让它加载一个视图,该视图加载我预制的留言板脚本"admin.php“。如果我使用messageboard/admin.php,它就能正常工作。如果我使用messageboard/admin.php?但是,如果我在查询中输入一个参数,路由将不会正确地将用户发送到留言板控制器,而是将他们发送到404。有没有人有任何关于如何让它工作的想法?我将永远心存感激。谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-11-28 11:01:04

好了伙计们我解决了。我需要改变三件事。第一个是mtvee的建议,让它读取查询字符串。第二个你需要修改配置文件中的$ config‘’permitted_uri_chars‘,使其包含一个等号,因为它在启动时是禁用的,并且所有的查询字符串都将是for ?a=34或类似的字符。第三个是你需要转到$config‘’uri_protocol‘并把它从AUTO改为PATH_INFO。一旦我这样做了,它就起作用了。

票数 1
EN

Stack Overflow用户

发布于 2009-11-28 09:22:32

我相信CI是不会跳出盒子的。在此处查看启用查询字符串http://ellislab.com/codeigniter/user-guide/general/urls.html

票数 0
EN

Stack Overflow用户

发布于 2009-11-28 10:13:38

我敢肯定语法是:

代码语言:javascript
运行
复制
$route['messageboard/(:any)'] = "messageboard/index"; //<-- notice brackets

而不是

代码语言:javascript
运行
复制
$route['messageboard/:any'] = "messageboard/index";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1811037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档