简体   繁体   English

使用codeigniter在php&mysqli中进行多级登录

[英]Multilevel Login in php&mysqli with codeigniter

i have 3 user with different access page, i have try create login form standart with no limit access.我有 3 个具有不同访问页面的用户,我尝试创建没有访问限制的登录表单标准。 now i'm confussed where i must place new code multiple login.现在我很困惑我必须在哪里放置新代码多次登录。 ( i use php&mysqli database with codeigniter framework ) (我使用带有 codeigniter 框架的 php&mysqli 数据库)

Please help me, thk u before请帮助我,谢谢你之前

database image数据库图像

code image代码图像

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

class Welcome extends CI_Controller {

    function __construct(){
        parent::__construct();
        $this->load->model('m_rental');
    }

    public function index(){
        $this->load->view('login');
    }

    function login(){
        $username = $this->input->post('username');
        $password = $this->input->post('password');
        $this->form_validation->set_rules('username','Username','trim|required');
        $this->form_validation->set_rules('password','Password','trim|required');
        if($this->form_validation->run() != false){
            $where = array(
                'admin_username' => $username,
                'admin_password' => $password,      
            );
            $data = $this->m_rental->edit_data($where,'admin');
            $d = $this->m_rental->edit_data($where,'admin')->row();
            $cek = $data->num_rows();
            if($cek > 0){
                $session = array(
                    'id'=> $d->admin_id,
                    'nama'=> $d->admin_nama,
                    'status' => 'login'
                );
                $this->session->set_userdata($session);
                redirect(base_url().'admin');
            }else{
                redirect(base_url().'welcome?pesan=gagal');         
            }
        }else{
            $this->load->view('login');
        }
    }
}

Try to add level to your session and read it later on dashboard page:尝试为您的会话添加级别并稍后在仪表板页面上阅读:

        $session = array(
            'id'=> $d->admin_id,
            'nama'=> $d->admin_nama,
            'status' => 'login',
            'level' => $d->level
        );

And on dashboard page并在仪表板页面上

if($this->session->userdata["level"] === "superadmin")
{
   // Code if level = superadmin
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM