无法在CI中创建管理员会话

I want to create a login system in CodeIgniter. I have this in my controller:

public function user_login_process()
{

    $data = array(
        'username' => $this->input->post('username'),
        'password' => $this->input->post('password')
    );
    $result = $this->login_database->login($data);
    if ($result == TRUE) {

        $username = $this->input->post('username');
        $result = $this->login_database->read_user_information($username);
        if ($result != false) {
            $session_data = array(
                'username' => $result[0]->username,
                'email' => $result[0]->email,
            );
            $this->session->set_userdata('logged_in', $session_data);
            if (isset($this->session->userdata['logged_in'])) {
                if( $username="admin"){
                    $result1 = $this->login_database->read_admin_information($username);
                    if ($result1 != false) {
                        $session_data = array(
                            'username' => $result1[0]->username,

                        );
                        $this->session->set_userdata('admin', $session_data);
                        $this->load->view('admin_page');
}}}
            else {
                $this->load->view('home_page');

            }}
    } else {
        $data = array(
            'error_message' => 'Invalid Username or Password'
        );
        $this->load->view('login_form', $data);
    }
    //}

I have this in my model:

 public function login($data) {

        $condition = "username =" . "'" . $data['username'] . "' AND " . "password =" . "'" . $data['password'] . "'";
        $this->db->select('*');
        $this->db->from('user');
        $this->db->where($condition);
        $this->db->limit(1);
        $query = $this->db->get();

        if ($query->num_rows() == 1) {
            return true;
        } else {
            return false;
        }
    }

// Read data from database to show data in admin page
    public function read_user_information($username) {//Will read the data for loginn

        $condition = "username =" . "'" . $username . "'";
        $this->db->select('*');
        $this->db->from('user');
        $this->db->where($condition);
        $this->db->limit(1);
        $query = $this->db->get();

        if ($query->num_rows() == 1) {
            return $query->result();
        } else {
            return false;
        }
    }
    public function read_admin_information($username) {//Will read the data for loginn

        $condition = "username =" . "'" . $username . "'";
        $this->db->select('*');
        $this->db->from('user');
        $this->db->where($condition);
        $this->db->limit(1);
        $query = $this->db->get();

        if ($query->num_rows() == 1) {
            return $query->result();
        } else {
            return false;
        }
    }

So I'm trying to create a session which differentiates a user if it is a normal or is admin(username=admin). The problem is that after I login like admin or not this always takes me to the admin page. What it should do: it should take me to the home_page if user is not admin but is logged in.

Have I done something wrong? I have read the session class of CI before I did this. Can someone help me to do this in right way? Thanks!

you are not comparing, you are assigning here:

if( $username="admin"){ // will assign 'admin' to $username

Should be:

if( $username=="admin"){ // will compare $username == 'admin'

try this sir: (if you have a usertype on your table)

for example:

  User_Account:(The table)
  User_type(1 is admin)(0 is client)
  ID | First_name | Last_name | Username | Password | User_type 
   1    Michael     Jordan       MJ23       6rings       1
   2    Kobe        Bryant       KB24       5rings       0

MODEL:

  public function login($user,$pass){
       $data = array(
       'Username' => $user,
       'Password' => $pass);

       $query = $this->db->get_where('user_account',$data);
       return $query->result_array(); 
  }

VIEW:

  <form action="<?php echo base_url(); ?>index.php/My_Controller/login_user" method="post">
     Username: <input type="text" name="username"/><br/>
     Password: <input type="password" name="password"/><br/>
     <button type="submit">LOGIN</button>
  </form>

CONTROLLER:

   public function login_user(){
      $user = $this->input->post('username');//this is from the name on input
      $pass = $this->input->post('password');//this is from the name on input

      $result=$this->My_Model->login($user,$pass);

      $usertype = $result["0"]["User_type"];//this is from the database, whenever you login a user which is valid this is what you will use to see what is his User_type

      if($usertype == 1){
            redirect('My_Controller/show_admin');
      } 
      else if($usertype == 0){
            redirect('My_Controller/show_client');
      }
   }

Try this out: if you have questions just comment!