使用Codeigniter + Bonfire框架我可以在我的URL中传递变量。这一切都适用于GET功能:
在我的视图文件中,我获得了我的用户ID,然后点击再次将其传递给控制器:
<a href="/my_team/index/<?php echo $user->member->id; ?>">Something</a>
然后控制器收到ID:
public function index($id = null) {
//do stuff with that id...
}
网址如下所示:
http://mysite/my_team/index/26
该页面上的所有内容都知道用户ID为26并正确显示信息。
问题是我是否从URL手动删除了该号码,所以它看起来像这样:
http://mysite/my_team/index/
并将索引保留在URL中我现在收到一大堆错误,因为该网站无法从URL获取ID。我怎么能避免这个?也许使用.htacces或其他东西从URL隐藏index
公共函数?
答案 0 :(得分:1)
public function index($id = null) {
if(is_null($id)) {
// redirect to custom error page
}
//do stuff with that id...
}
答案 1 :(得分:0)
将CI网址路由器设置为重定向
http://mysite/my_team/index/
到默认网址
http://mysite/my_team/index/1
答案 2 :(得分:0)
参数可以是字符串值,所以我更喜欢这种方式
public function index($id = '') {
if($id!='') {
// Proceed further
}
else{
//Redirect to a error page(that is 301 safe)
}
}