Postingan lainnya
Membuat pembatasan hak akses
Saya buat 2 hak akses, user dan admin.
Gimana caranya agar tampilan menu user dan admin itu beda. admin dapat mengakses semua menu, tapi user hanya mengakses menu dashboard, transaksi, produk, konfigurasi dll.
LIBRARIES SIMPLE LOGIN
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Simple_login
{
protected $CI;
public function __construct()
{
$this->CI =& get_instance();
//Load data model user
$this->CI->load->model('user_model');
}
//Fungsi login
public function login($username,$password)
{
$check = $this->CI->user_model->login($username,$password);
//Jika ada data user, maka create session login
if($check){
$id_user = $check->id_user;
$nama = $check->nama;
$akses_level = $check->akses_level;
//Create session
$this->CI->session->set_userdata('id_user', $id_user);
$this->CI->session->set_userdata('nama', $nama);
$this->CI->session->set_userdata('username', $username);
$this->CI->session->set_userdata('akses_level', $akses_level);
//Redirect ke halaman admin yang diproteksi
redirect(base_url('admin/dashboard'), 'refresh');
}else{
//Kalau tidak ada (username dan password salah), maka disuruh login lagi
$this->CI->session->set_flashdata('warning', 'Username atau password salah');
redirect(base_url('login'), 'refresh');
}
}
//Fungsi cek login
public function cek_login()
{
//Memeriksa sessionnya sudah ada apa belum, jika belum redirect ke halaman login
if($this->CI->session->userdata('username')==""){
$this->CI->session->set_flashdata('warning', 'Anda belum login');
redirect(base_url('login'), 'refresh');
}
}
//Fungsi logout
public function logout()
{
//Membuang semua session yang telah diset pada saat login
$this->CI->session->unset_userdata('id_user');
$this->CI->session->unset_userdata('nama');
$this->CI->session->unset_userdata('username');
$this->CI->session->unset_userdata('akses_level');
//Setelah session di unset maka nanti redirect ke login
$this->CI->session->set_flashdata('warning', 'Anda berhasil logout');
redirect(base_url('login'), 'refresh');
}
}
0
1 Jawaban:
<p>lebih baik menentukan role nya dulu mas, misalnya dengan cara buat database khusus role nanti dicocokan menu mana yang bisa di akses admin maupun user.. menghubungkan nya dengan inner join sql.. semoga membantu<br></p>
1
Tanggapan
Terimakasih jawabannya. Ini dah jadi.