多用户登录管理员,教师和学生,在Codeigniter中具有特定用户

时间:2019-03-11 20:31:56

标签: codeigniter-3

我已经搜索过但找到了 how to use multi level user login in codeigniter ? 但我找不到满意的答案。请引导我 我可以成功使用多个用户登录。当我输入电子邮件和密码时,它显示管理员,教师或学生页面。但是我想当用户输入电子邮件和密码时,它将显示它的ID而不是它的user_type..e.g。输入姓名和姓名的老师在输入电子邮件和密码时将显示user_type == Ahsan并显示用户ID。 希望您能理解我的问题。谢谢

这是我的控制器代码

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class welcome extends CI_Controller {

function __construct(){
    parent:: __construct();
    $this->load->model('Admin/Accounts_data');
    //$this->load->library('session');

}


public function index()
{
    $this->load->view('home');
    $this->load->view('footer');
    //$this->load->view('welcome_message');
}

//multi user login
function auth(){
    $email = $this->input->post('email' , TRUE);    
    $password = $this->input->post('password', TRUE);
    $validate = $this->fyp_m->validate($email,$password);
    if($validate->num_rows() > 0){
    $data = $validate->row_array();
    $id = $data['u_id'];
    $name = $data['u_name'];
    $email = $data['u_email'];
    $level = $data['u_type'];
    $s_data = array(
        'u_id' => $id,
        'username' => $name,
        'email' => $email,
        'level' => $level,
        'logged_in' => TRUE
    );
    $this->session->set_userdata($s_data);
    if($level === 'Admin')
    {           
    redirect('page');
        }
    else if($level === 'Teacher'){ 
    //redirect ('page/teacher');
    $this->load->view('Teacher/Header');
    $this->load->view('Teacher/Home');
    $this->load->view('footer');
    }
    else {
    redirect('page/student');
    }


    }else{
        echo $this->session->set_flashdata('msg', 'Username or password is 
wrong');
        redirect('welcome');
    //$this->load->view('welcome_message');
    }

    }


//for logout
public function logout(){
$this->session->sess_destroy();
redirect('welcome');
}




}

0 个答案:

没有答案