Php codeigniter上的管理员类型

Php codeigniter上的管理员类型,php,codeigniter,Php,Codeigniter,我的管理员类型有问题 在我的数据库中,我有一个类型字段,它有1和2个值 1代表管理员 2是给收银员的 现在这是我的控制器 <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Main extends CI_Controller { //functions function login() { //http:

我的管理员类型有问题

在我的数据库中,我有一个类型字段,它有1和2个值 1代表管理员 2是给收银员的

现在这是我的控制器

<?php  
 defined('BASEPATH') OR exit('No direct script access allowed');  
 class Main extends CI_Controller {  
      //functions  
      function login()  
      {  
           //http://localhost/tutorial/codeigniter/main/login  
           $data['title'] = 'Lending System Login';  
           $this->load->view("login", $data);  
      }  
      function login_validation()  
      {  
           $this->load->library('form_validation');  
           $this->form_validation->set_rules('username', 'Username', 'required');  
           $this->form_validation->set_rules('password', 'Password', 'required');  
           if($this->form_validation->run())  
           {  
                //true  
                $username = $this->input->post('username');  
                $password = $this->input->post('password');  
                //model function  
                $user = $this->load->model('main_model');  
                if($this->main_model->can_login($username, $password))  
                {  
                     $session_data = array(  
                          'username'     =>     $username  
                     );  
                     $this->session->set_userdata($session_data);  
                     redirect(base_url() . 'main/enter');  
                }  
                else  
                {  
                     $this->session->set_flashdata('error', 'Invalid Username and Password');  
                     redirect(base_url() . 'main/login');  
                }  
           }  
           else  
           {  
                //false  
                $this->login();  
           }  
      }  
      function enter(){  
           if($this->session->userdata('username') != '')  
           {
            //check what type 
            //1 - admin
            //2 - cashier
              if($this->session->userdata('type') == 1)
              {
                // echo '<h2>Welcome - '.$this->session->userdata('username').'</h2>';  
                // echo '<label><a href="'.base_url().'main/logout">Logout</a></label>';
                redirect(base_url(). 'main/admin');  
              }
              else
              {
                redirect(base_url(). 'main/cashier');
              }

           }  
           else  
           {  
                redirect(base_url() . 'main/login');  
           }  
      }  

      function logout()  
      {  
           $this->session->unset_userdata('username');  
           redirect(base_url() . 'main/login');  
      }  
 }  

我的问题是,我无法获得管理员类型,因为我没有键入它,它已经在数据库中,我的问题是,我如何才能拥有管理员类型

有人能帮我吗。我是codeigniter的新手

谢谢。

明白了

我所做的就是这样

 $session_data = array(  
        'username' => $username,
        'type' => $type  
 );  
 $this->session->set_userdata($session_data);     
 if($this->session->userdata('username') != '')
 {
   if($this->session->userdata('type') == '1')
   {
       redirect(base_url(). 'main/admin');
   }
  else
   {
       redirect(base_url(). 'main/cashier');
   }
}


如果您有一个名为
user\u type
的列来定义用户角色,请执行以下步骤

1) 在模型中,修改此选项

if($query->num_rows() > 0)
{
    return $query->row_array(); // Send data from model to controller
}
else
{
   return false;
}
$user_data = $this->main_model->can_login($username, $password)
if($user_data)  
{  
     $session_data = array(  
          'username' =>     $user_data['username'],
          'type'     =>     $user_data['user_type'],   
     );  
     $this->session->set_userdata($session_data);  
     redirect(base_url() . 'main/enter');  
}  
else  
{  
   $this->session->set_flashdata('error', 'Invalid Username and Password');  
   redirect(base_url() . 'main/login');  
} 
2) 在控制器中,修改此选项

if($query->num_rows() > 0)
{
    return $query->row_array(); // Send data from model to controller
}
else
{
   return false;
}
$user_data = $this->main_model->can_login($username, $password)
if($user_data)  
{  
     $session_data = array(  
          'username' =>     $user_data['username'],
          'type'     =>     $user_data['user_type'],   
     );  
     $this->session->set_userdata($session_data);  
     redirect(base_url() . 'main/enter');  
}  
else  
{  
   $this->session->set_flashdata('error', 'Invalid Username and Password');  
   redirect(base_url() . 'main/login');  
} 

user
表中是否有
type
列?@imoverflow yesonly
如果($query->num\u rows()>0)
不够,要么为admin设置条件,要么检查登录用户是否为admin
admin
或者这有一个错误,sir说消息:未定义属性:Main:$Main\u model文件名:controllers/Main.php行号:35像这样加载您的模型
Main\u model
$this->load->model('Main\u model')