2013-07-04 66 views
0

我一直在努力笨过去1年,但从来没有发现这个问题,probally因为我有一个功能被一直致力于与参数笨函数参数问题

让我告诉ü问题

说我有这样的功能在我面前

class user extends CI_Controller{ 
    public function __construct() { 
     parent::__construct(); 
     @session_start(); 
     $this->load->library('encrypt'); 
    } 
    /*------------for registration-------------*/ 
    function register() 
    { 
     } 

现在它会被称为像这样

http://example.com/user/register 

我传递任何参数寄存器功能

现在

,如果我这样写在地址栏

http://example.com/user/register/abc/abd

然后也注册功能将被调用显示为没有错误

我传递两个参数的寄存器功能,并在注册功能我没有赶上他们..

我想在这种情况下,404 error应显示,,我怎么可以这样......

+0

它不是一个问题与Codeigniter。这是如何制造的。顺便说一下,大多数网站的工作就是这样我不知道为什么你要显示的404,而不是仅仅忽略这些参数。 – Josnidhin

回答

1

可以使用URI class检查,如果第三URI段包含任何东西,如果这样做,你可以使用show_404()

if($this->uri->segment(3) !== FALSE) 
{ 
    show_404(); 
} 
+0

绝对简单而有效的,真的喜欢它就像一个魅力...但我反刍使用路由技术这个? – Saswat

+0

@Saswat - 我看不出在URI路由部分,可以帮助你用这样的东西。这是可能的,但我不知道怎么办。 – Mischa