Membuat Login Multi User dengan Hak Akses Berbeda di PHP
Tutorial kali ini admin akan membuat login Multi User / Multiple Login, Yaitu Login Form dengan Hak Akses User Yang Berbeda di PHP Mysql dengan Session , Hal ini sering dijumpai pada aplikasi website yaitu sebuah fitur halaman dengan Hak Akses yang berbeda , contohnya pada aplikasi SPPD , Aplikasi Perpustakaan , dan lain-lain
Berikut ini akan dibahas tentang bagaimana membuat login dengan php, dan membuat tingkatan hak akses user untuk setiap halaman.
Membuat Multi User / Multi Level Login dengan Hak Akses Berbeda di PHP
Desain Database
Database berisi dua table, yaitu :
- Table s_user, yang berfungsi untuk menampung data user, seperti username dan password.
- Table s_login, yang berfungsi untuk mencatat user yang sedang login.
Struktur tabel s_user
Struktur Tabel s_login
Untuk SQL nya s_user :
CREATE TABLE IF NOT EXISTS `s_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL,
`password` varchar(100) NOT NULL,
`nama` varchar(50) NOT NULL,
`email` varchar(50) NOT NULL,
`hak_akses` int(11) NOT NULL DEFAULT '1' COMMENT '1=user, 2=operator, 10=administrator',
`waktu_add` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`waktu_modifi` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`status` int(11) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`,`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=104 ;
INSERT INTO `s_user` (`id`, `username`, `password`, `nama`, `email`, `hak_akses`, `waktu_add`, `waktu_modifi`, `status`) VALUES
(100, 'superuser', '141a8eaca4c03163b1e37d8d2a9ae77c', 'Abdurrahman', 'abdurrahman@tes.com', 10, '2015-02-22 05:41:56', '2015-02-23 08:54:01', 1),
(101, 'user1', '141a8eaca4c03163b1e37d8d2a9ae77c', 'Sulaiman', 'sulaiman@tes.com', 1, '2015-02-22 05:41:56', '2015-02-23 08:55:28', 1),
(102, 'user2', '141a8eaca4c03163b1e37d8d2a9ae77c', 'Yusuf', 'yusuf@tes.com', 2, '2015-02-22 05:41:56', '2015-02-23 08:55:03', 1),
(103, 'user3', '141a8eaca4c03163b1e37d8d2a9ae77c', 'Ismail', 'ismail@tes.com', 3, '2015-02-22 05:41:56', '2015-02-23 08:55:10', 1);
untuk sql s_login
CREATE TABLE IF NOT EXISTS `s_login` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`key_login` varchar(30) NOT NULL,
`id_user` int(11) NOT NULL DEFAULT '0',
`waktu_login` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`waktu_kadaluarsa` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`ip` varchar(100) NOT NULL,
`pc_dan_browser` varchar(100) NOT NULL,
`status` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `key_login` (`key_login`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
File-File Aplikasi
Berikut adalah file-file php dan file Database :
Untuk sementara sampai disini dulu tutorialnya.. silahkan download projectnya disini bagi yang membutuhkan ya..