使用数据库值的Codeigniter路由页面

时间:2016-09-07 07:04:14

标签: codeigniter routes

目前我有一个如下页面 - abc.com/controller/action/23这里23是项目ID,它是动态的。我必须使用数据库中的id获取项目的名称,并路由到一个新的URL,如下面的 - abc.com/itemname。我怎么能这样做?

我试过了,但没有工作

控制器代码 -

public function action($id,$url=NULL) {
    if($url==''){
        $getUrl=$this->Wishlist_model->getwishlistByid($id)->url;
        redirect(base_url(). 'controller/action/'.$id.'/'.$getUrl);
    }
    else{
        //load view
    }
}

路线代码 -

$route['(:any)'] = 'wishlist/wishlist/$1/$2';

1 个答案:

答案 0 :(得分:0)

您可以通过设置要显示的数据重定向到此类其他功能:

   $dataArr=array(
        'id'=>1,
        'name'=>'ABC',
        'address'=>'XYZ'
    );
    $this->session->set_flashdata('item_data', $dataArr);
    redirect($itemname);

要处理“abc.com/itemname”之类的网址,您需要在routes.php中添加以下内容

$route['(:any)'] = 'controller/function';

现在,在控制器/功能中,您可以访问所有数据并在模板中显示,如:

$data = $this->session->flashdata('item_data');

如果有疑问或任何不清楚的地方,请告诉我