Codeigniter 多控制器
Codeigniter multiple controllers
我正在通过注册创建待办事项列表。我将我的默认控制器命名为 main 并将其用于 register/login
,在本地主机上,索引页面看起来像 http://localhost/todo/main/
但是,登录后我不想显示 localhost/main/todolist
而是 localhost/todolist
我必须为此创建一个新控制器吗?在CI中使用多个控制器是否实用?
我的routes.php
现在是
$route['default_controller'] = 'main';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
<?php
public function login_validation(){
$this->load->library('form_validation');
$this->form_validation->set_rules('email','Email','required|trim|callback_validate_credentials');
$this->form_validation->set_rules('password','Password','required|md5|trim');
/*******************************
Little modification so that i'll come in this block if form has everything right in it
**********************************/
if($this->form_validation->run() !== FALSE){
/******************
Also you should now check these user inputs against DB values to make sure if this user exists. you may use e.g
***************/
$result = $this->db->get_where('table_name',array('table_colum',$this->input->post('form_field_name')))->row();
if($result)
{
$data = array(
'username'=>$this->input->post('username'),
'email'=>$this->input->post('email'),
'is_logged_in'=> 1
);
$this->session->set_userdata($data);
// This should be the new controller where you want to take
// your user but by passing its ravelent data, you can do it like
redirect('lists',$data);
//create new controller and put that name here for 'lists'
} else {
$this->load->view('login');
}
}
我正在通过注册创建待办事项列表。我将我的默认控制器命名为 main 并将其用于 register/login
,在本地主机上,索引页面看起来像 http://localhost/todo/main/
但是,登录后我不想显示 localhost/main/todolist
而是 localhost/todolist
我必须为此创建一个新控制器吗?在CI中使用多个控制器是否实用?
我的routes.php
现在是
$route['default_controller'] = 'main';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
<?php
public function login_validation(){
$this->load->library('form_validation');
$this->form_validation->set_rules('email','Email','required|trim|callback_validate_credentials');
$this->form_validation->set_rules('password','Password','required|md5|trim');
/*******************************
Little modification so that i'll come in this block if form has everything right in it
**********************************/
if($this->form_validation->run() !== FALSE){
/******************
Also you should now check these user inputs against DB values to make sure if this user exists. you may use e.g
***************/
$result = $this->db->get_where('table_name',array('table_colum',$this->input->post('form_field_name')))->row();
if($result)
{
$data = array(
'username'=>$this->input->post('username'),
'email'=>$this->input->post('email'),
'is_logged_in'=> 1
);
$this->session->set_userdata($data);
// This should be the new controller where you want to take
// your user but by passing its ravelent data, you can do it like
redirect('lists',$data);
//create new controller and put that name here for 'lists'
} else {
$this->load->view('login');
}
}