更改codeigniter中的任何规则以匹配函数

时间:2013-05-08 17:16:01

标签: codeigniter codeigniter-2

我已经设置了routes.php以适应我网站的性质。不幸的是,我的最后一条路线存在问题,即:

$route['(:any)']     = "profile/profile_guest/$1";

如果传递的用户名密码名称正确,例如domain.com/username,它将加载他/她的数据。如果没有,它会加载页面有错误(因为无法在数据库中检索不存在的用户的数据)。这是我的问题!我想避免这个错误显示。

无论如何,我可以避免这种错误发生吗?没有回声似乎是打印或重定向都没有工作。不知道为什么!就好像这个方法中的代码没有执行,而是加载了视图。下面是profile_guest函数的一部分:

public function profile_guest($username)
    {
            $username = $this->uri->segment(1);
            //echo "Hello " . $username;
                redirect('main', 'refresh');
            if($username != '')
            {
                /* echo "<h1>HELLO WORLD SOMETHING</h1>"; */

1 个答案:

答案 0 :(得分:0)

如果没有看到剩下的代码,很难说。

也许您需要在运行查询之前检查该值:

// user_model
function get_user($username = NULL){
    if($username){
        return $this->db->query(...
    }else{
        return false;
    }
}

然后在加载视图之前检查查询是否返回了什么

if($this->user_model->get_user($username){
    //show the page
}else{
    echo "no user found";
}