ribbon iwa

Login Session Menggunakan CodeIgniter

Kali ini kami akan share bagaimana membuat form login session menggunakan CodeIgniter. Jika kalian belum menginstal CodeIgniter silahkan download file terbarunya dari pada website resminya download.

Dalam menjalankan aplikasi simple ini kami menggunakan localhost untuk menguji, aplikasi ini kami beri nama loginci. Maka dalam instalasi, konfigurasi yang benar adalah sebagai berikut application / config / config.php

 $config['base_url'] = 'http://localhost/loginci'; 

Database

Berikutnya yang perlu anda persiapkan dalam membuat aplikasi ini adalah membuat database-nya, buat database dengan nama codeigniter kemudian masukkan struktur database dibawah ini.
 CREATE TABLE `users` (
  `id` int(11) NOT NULL,
  `email` varchar(40) NOT NULL,
  `password` varchar(40) NOT NULL,
  `fname` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data untuk tabel `users`
--

INSERT INTO `users` (`id`, `email`, `password`, `fname`) VALUES
(2, 'armandelta7@gmail.com', 'dimanakauberada', 'Arman Basir'); 

Koneksi Database

Berikutnya adalah membuat koneksi kedatabase, buka folder application / folder / database.php kemudian masukkan nama database sesuai yang anda buat tadi.
 $db['default'] = array(
 'dsn' => '',
 'hostname' => 'localhost',
 'username' => 'root',
 'password' => '',
 'database' => 'codeigniter',
 'dbdriver' => 'mysqli',
 'dbprefix' => '',
 'pconnect' => TRUE,
 '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
); 

Buat Model

Salah satu aturan membuat model adalah file pertama diharuskan menggunakan huruf capital. Cara membuatnya buka application / models kemudian buat file dengan nama Users_model.php
 <?php
 class Users_model extends CI_Model {
  function __construct(){
   parent::__construct();
   $this->load->database();
  }

  public function login($email, $password){
   $query = $this->db->get_where('users', array('email'=>$email, 'password'=>$password));
   return $query->row_array();
  }

 }
?> 

Buat Controller

anda menuu folder application / controllers kemudian buta file dengan nama User.php.
 <?php
defined('BASEPATH') OR exit('No direct script access allowed');

class User extends CI_Controller {

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

 public function index(){
  //load session library
  $this->load->library('session');

  //restrict users to go back to login if session has been set
  if($this->session->userdata('user')){
   redirect('home');
  }
  else{
   $this->load->view('login_page');
  }
 }

 public function login(){
  //load session library
  $this->load->library('session');

  $email = $_POST['email'];
  $password = $_POST['password'];

  $data = $this->users_model->login($email, $password);

  if($data){
   $this->session->set_userdata('user', $data);
   redirect('home');
  }
  else{
   header('location:'.base_url().$this->index());
   $this->session->set_flashdata('error','Invalid login. User not found');
  } 
 }

 public function home(){
  //load session library
  $this->load->library('session');

  //restrict users to go to home if not logged in
  if($this->session->userdata('user')){
   $this->load->view('home');
  }
  else{
   redirect('/');
  }
  
 }

 public function logout(){
  //load session library
  $this->load->library('session');
  $this->session->unset_userdata('user');
  redirect('/');
 }

}
 

Buat Views

Beralih ke folder application / views kemudian buat file dengan nama login_page.php file ini sebagai form tampilan login.
 <!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>CodeIgniter Login</title>
 <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>bootstrap/css/bootstrap.min.css">
</head>
<body>
 <nav class="navbar navbar-default navbar-static-top">
  <div class="container-fluid">
   <div class="navbar-header">
    <a class="navbar-brand" href="https://www.tutorialswb.com/">TutorialsWB</a>
   </div>
  </div>
 </nav>
 <div class="container">
  <div class="row">
   <div class="col-sm-4 col-sm-offset-4">
    <div class="login-panel panel panel-primary">
     <div class="panel-heading">
      <h3 class="panel-title"><span class="glyphicon glyphicon-lock"></span> Login
      </h3>
     </div>
     <div class="panel-body">
      <form method="POST" action="<?php echo base_url(); ?>index.php/user/login">
       <fieldset>
        <div class="form-group">
         <input class="form-control" placeholder="Email" type="email" name="email" required>
        </div>
        <div class="form-group">
         <input class="form-control" placeholder="Password" type="password" name="password" required>
        </div>
        <button type="submit" class="btn btn-lg btn-primary btn-block"><span class="glyphicon glyphicon-log-in"></span> Login</button>
       </fieldset>
      </form>
     </div>
    </div>
    <?php
    if($this->session->flashdata('error')){
     ?>
     <div class="alert alert-danger text-center" style="margin-top:20px;">
      <?php echo $this->session->flashdata('error'); ?>
     </div>
     <?php
    }
    ?>
   </div>
  </div>
 </div>
</body>
</html> 

Sekian share singkat kali ini kami bisa langsung melihat demo dan mendownload filenya dibawah ini, dengan akses login

Email : armandelta7@gmail.com
Pass : dimanakauberada


DEMO       DOWNLOAD

Jika kalian belum paham dengan apa yang kami share di atas silahkan tinggalkan komentar dibawah dan mulai berdiskusi dengan kami.


SUBSCRIBE TO OUR NEWSLETTER

close