Tutorial Cara Membuat Login Session Dengan CodeIgniter Dan Bootstrap
Tutorial Cara Membuat Login Session Dengan CodeIgniter Dan Bootstrap
Log Masuk atau Login adalah proses untuk mengakses sebuah sistem
komputer dengan memasukkan identitas dari akun pengguna sebagai hak
akses.
Pada tutorial kali ini kita akan mengimplementasi sebuah sistem login
menngunakan Framework CodeIgniter dan Bootstrap, pertama download
CodeIgniter di situs resminya di www.codeigniter.com, setelah berhasil
diunduh / didownload, silahkan extract di folder htdocs (jika menggunakan
xampp).
--
-- Table structure for table `tbl_users`
--
--
-- Dumping data for table `tbl_users`
--
Maka jika berhasil maka kurang lebih tampilannya akan seperti ini:
Oke, selanjutnya ada beberapa konfigurasi didalam CodeIgniter yang perlu
kita perhatikan sebelumnya, mari kita bahas satu-persatu
$config['base_url'] = "";
$config['base_url'] = "http://".$_SERVER['HTTP_HOST'].
str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
$autoload['libraries'] = array('');
$autoload['helper'] = array('');
$autoload['helper'] = array('url');
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => '',
'password' => '',
'database' => '',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => '', //sesuaikan password MYSQL kalian
'database' => 'ci-login',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Oke setelah konfigurasi diatas selesai, sekarang kita akan coba membuat
sebuah controller baru di folder application/controllers, dan beri nama
dengan Login.php, berikut kodenya:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
if($this->admin->logged_id())
{
//jika memang session sudah terdaftar, maka redirect ke halaman da
hsboard
redirect("dashboard");
}else{
//cek validasi
if ($this->form_validation->run() == TRUE) {
$session_data = array(
'user_id' => $apps->id_user,
'user_name' => $apps->username,
'user_pass' => $apps->password,
);
//set session userdata
$this->session->set_userdata($session_data);
redirect('dashboard/');
}
}else{
}else{
$this->load->view('login');
}
}
}
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
Oke, selanjutnya buat sebuah file baru di folder application/views, dan beri
nama login.php dan masukkan kode berikut ini:
<html>
<head>
<title>Login - CodeIgniter</title>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/b
ootstrap/3.3.7/css/bootstrap.min.css">
<style>
.form-signin
{
max-width: 330px;
padding: 15px;
margin: 0 auto;
}
.form-signin .form-signin-heading, .form-signin .checkbox
{
margin-bottom: 10px;
}
.form-signin .checkbox
{
font-weight: normal;
}
.form-signin .form-control
{
position: relative;
font-size: 16px;
height: auto;
padding: 10px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.form-signin .form-control:focus
{
z-index: 2;
}
.form-signin input[type="text"]
{
margin-bottom: -1px;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
.form-signin input[type="password"]
{
margin-bottom: 10px;
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.account-wall
{
margin-top: 20px;
padding: 40px 0px 20px 0px;
background-color: #f7f7f7;
-moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
-webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.login-title
{
color: #555;
font-size: 18px;
font-weight: 400;
display: block;
}
.profile-img
{
width: 96px;
height: 96px;
margin: 0 auto 10px;
display: block;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
border-radius: 50%;
}
.need-help
{
margin-top: 10px;
}
.new-account
{
display: block;
margin-top: 10px;
}
</style>
</head>
<body>
<div class="container" style="margin-top: 50px">
<div class="row">
<div class="col-sm-6 col-md-4 col-md-offset-4">
<h1 class="text-center login-title">Masuk Administrator</h1>
<?php if(isset($error)) { echo $error; }; ?>
<div class="account-wall">
<img class="profile-img" src="https://lh5.googleusercontent.com/-b
0-k99FZlyE/AAAAAAAAAAI/AAAAAAAAAAA/eu7opA4byxI/photo.jpg?sz=120"
alt="">
<form class="form-signin" method="POST" action="<?php echo base_ur
l() ?>index.php/login">
<div class="form-group">
<input type="text" class="form-control" name="username" placeh
older="Masukkan Username Anda" autofocus>
<?php echo form_error('username'); ?>
</div>
<div class="form-group">
<input type="password" name="password" class="form-control" pl
aceholder="Masukkan Password Anda">
<?php echo form_error('password'); ?>
</div>
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
$this->load->view("dashboard");
}else{
}
}
<!DOCTYPE html>
<html>
<head>
<title> Dashboard - Login CodeIgniter & Bootstrap</title>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/b
ootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/f
ont-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="colla
pse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Login CodeIgniter & Bootstrap</a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<div class="navbar-form navbar-right">
<a href="<?php echo base_url() ?>index.php/dashboard/logout" type=
"submit" class="btn btn-success"><i class="fa fa-sign-out"></i> Logout</a>
</div>
</div>
</nav>
<div class="container" style="margin-top: 80px">
<div class="row">
<div class="col-md-3">
<div class="list-group">
<a href="#" class="list-group-item active" style="text-align: center
;background-color: black;border-color: black">
ADMINISTRATOR
</a>
<a href="dashboard.php" class="list-group-item"><i class="fa fa-dash
board"></i> Dashboard</a>
<a href="#" class="list-group-item"><i class="fa fa-book"></i> Blog<
/a>
<a href="#" class="list-group-item"><i class="fa fa-folder"></i> Kat
egori</a>
<a href="#" class="list-group-item"><i class="fa fa-comments-o"></i>
Komentar</a>
<a href="logout.php" class="list-group-item"><i class="fa fa-sign-ou
t"></i> Logout</a>
</div>
</div>
<div class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><i class="fa fa-dashboard"></i> Dashboard<
/h3>
</div>
<div class="panel-body">
Selamat Datang <b><?php echo $this->session->userdata("user_nama")
?></b> di halaman Administrator System
</div>
</div>
</div>
</div>
</div>
$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
$route['default_controller'] = 'login';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;