Skip to content
Menu
Blog Java Web Media
  • Home
  • Kursus Offline dan Online
  • Blog
  • Kontak
Blog Java Web Media
Kursus Web Programming - Java Web Media

Tutorial Codeigniter 3 – Membuat Halaman Login: Bagian 4 – Login, Logout dan Proteksi Halaman

Posted on August 7, 2015August 7, 2015

Pada tutorial kali ini, Anda akan membuat:

  1. Mengaktifkan fungsi login
  2. Proteksi halaman dasbor sehingga hanya bisa diakses setelah login
  3. Logout

Sebelum mengikuti tutorial ini, pastikan Anda telah mengikuti tutorial ini:

  1. File hasil akhir Tutorial Bagian 3, silakan download di:https://drive.google.com/file/d/0B5BhV6c89_2YNFEwSzBnaGEwM2c/view?usp=sharing.
  2. Membaca Tutorial Codeigniter 3 – Membuat Halaman Login: Bagian 1 – Installasi dan Konfigurasi Awal Codeigniter 3
  3. Membaca Tutorial Codeigniter 3 – Membuat Halaman Login: Bagian 2 – Membuat Controller dan View Halaman Statis
  4. Membaca Tutorial Codeigniter 3 – Membuat Halaman Login: Bagian 3 – Membuat Database User dan Konfigurasinya

Anda dapat mendownload hasil akhir tutorial Bagian 4 ini di: https://drive.google.com/file/d/0B5BhV6c89_2YbWM4MzJnbTJvVUU/view?usp=sharing.

Membuat Library Simple_login.php

Library Simple_login.php ini nantinya berfungsi untuk login, logout dan sekaligus proteksi halaman dasbor/administrator.

  1. Buat file PHP baru di folder application/libraries
  2. Simpan dengan nama Simple_login.php
  3. Hapus semua kode yang ada (jika ada)
  4. Lalu ketik kode ini:
    <?php if(! defined('BASEPATH')) exit('Akses langsung tidak diperbolehkan');
    class Simple_login {
     // SET SUPER GLOBAL
     var $CI = NULL;
     public function __construct() {
     $this->CI =& get_instance();
     }
     // Fungsi login
     public function login($username, $password) {
     $query = $this->CI->db->get_where('users',array('username'=>$username,'password' => $password));
     if($query->num_rows() == 1) {
     $row = $this->CI->db->query('SELECT id_user FROM users where username = "'.$username.'"');
     $admin = $row->row();
     $id = $admin->id_user;
     $this->CI->session->set_userdata('username', $username);
     $this->CI->session->set_userdata('id_login', uniqid(rand()));
     $this->CI->session->set_userdata('id', $id);
     redirect(base_url('dasbor'));
     }else{
     $this->CI->session->set_flashdata('sukses','Oops... Username/password salah');
     redirect(base_url('login'));
     }
     return false;
     }
     // Proteksi halaman
     public function cek_login() {
     if($this->CI->session->userdata('username') == '') {
     $this->CI->session->set_flashdata('sukses','Anda belum login');
     redirect(base_url('login'));
     }
     }
     // Fungsi logout
     public function logout() {
     $this->CI->session->unset_userdata('username');
     $this->CI->session->unset_userdata('id_login');
     $this->CI->session->unset_userdata('id');
     $this->CI->session->set_flashdata('sukses','Anda berhasil logout');
     redirect(base_url('login'));
     }
    }

    Library Simple_login.php - Java Web Media
    Library Simple_login.php – Java Web Media
  5. Simpan file

Menambahkan fungsi/library Simple_login.php di autoload.php

Fungsi library Simple_login.php akan kita load otomatis saat website dibuka atau diakses.

  1. Buka file autoload.php di folder login/application/config
  2. Tambahkan autoload library Simple_login dengan mengubah kode ini:
    $autoload[‘libraries’] = array(‘form_validation’,’session’,’database’);
  3. Lalu tambahkan sehingga menjadi
    $autoload[‘libraries’] = array(‘form_validation’,’session’,’database’,’simple_login’);
  4. Simpan file
Autoload Library Codeigniter - Java Web Media
Autoload Library Codeigniter – Java Web Media

Mengaktifkan fungsi Login dan Logout

Fungsi login ini akan dihandle 3 file utama yaitu: controller Login.php, view/tampilan Login_view.php dan library Simple_login.php.

Mengubah controller Login.php

Controller Login.php ini nanti berfungsi untuk menangani fungsi login dan logout.

  1. Buka controller Login.php di folder login/application/controllers
  2. Setelah kode public function index() tekan Enter
  3. Lalu ketik kode ini
    // Fungsi Login
    $valid = $this->form_validation;
    $username = $this->input->post(‘username’);
    $password = $this->input->post(‘password’);
    $valid->set_rules(‘username’,’Username’,’required’);
    $valid->set_rules(‘password’,’Password’,’required’);
    if($valid->run()) {
    $this->simple_login->login($username,$password, base_url(‘dasbor’), base_url(‘login’));
    }
    // End fungsi login
  4. Kemudian setelah kode // Logout di sini tekan Enter
  5. Lalu ketik kode ini
    public function logout() {
    $this->simple_login->logout();
    }
  6. Simpan file (hasil akhir silakan lihat gambar di bawah ini)
Login dan Logout Codeigniter - Java Web Media
Login dan Logout Codeigniter – Java Web Media

Mengubah dan menambah Login_view.php

Login_view.php adalah tampilan atau view yang berisi formulir login dimana action dari form ini akan dihandle oleh controller Login.php yang telah kita edit sebelumya.

  1. Buka file Login_view.php di folder login/application/views
  2. Lalu setelah kode <h1>Login Page</h1> tekan Enter dua kali
  3. Kemudian ketik kode ini

    Form Login Codeigniter - Java Web Media
    Form Login Codeigniter – Java Web Media
  4. Simpan file (lihat gambar untuk lebih detailnya)

Anda telah berhasil mengaktifkan fungsi login dan logout pada controller Login.php dan view Login_view.php. Maka langkah selanjutnya adalah proteksi halaman Dasbor.

Proteksi Halaman Dasbor

Halaman dasbor nantinya akan menjadi halaman administrator website yang hanya bisa diakses jika sudah login dengan username dan password yang benar. Jika seseorang belum login dengan benar, maka ia akan dilempar ke halaman login.

Proteksi halaman ini akan kita letakkan di salah satu file di folder login/application/views/layout, yaitu file head.php yang merupakan halaman yang akan diload pertama. FIle ini akan ditambahi fungsi cek_login() yang telah didefinisikan sebelumnya di library Simple_login.php.

  1. Buka file head.php di folder application/views/layout
  2. Lalu pada baris pertama tekan Enter dua kali
  3. Lalu ketik kode ini:
    <?php
    // Proteksi halaman
    $this->simple_login->cek_login();
    ?>
  4. Simpan file (lihat gambar di bawah untuk lebih detail)
Proteksi Halaman Dasbor - Java Web Media Depok
Proteksi Halaman Dasbor – Java Web Media Depok

Menampilkan data orang yang login

Langkah selanjutnya adalah menampilkan data orang yang login, dengan mencetak data session username yang digunakan untuk login. Data login akan dicetak di file header.php.

  1. Buka file header.php yang ada di folder login/application/views/layout
  2. Ubah kode ini:
    <a href=”<?php echo base_url(‘profil’) ?>” title=”Update profil”>Nama</a>
  3. Menjadi seperti ini (hanya mengubah tulisan nama menjadi dynamic data dari session):
    <a href=”<?php echo base_url(‘profil’) ?>” title=”Update profil”>
    <?php echo ucfirst($this->session->userdata(‘username’)); ?>
    </a>
  4. Simpan file (lihat gambar agar lebih jelas)
Data Session dan Login Codeigniter - Kursus di Java Web Media Depok
Data Session dan Login Codeigniter – Kursus di Java Web Media Depok

Mengetes fungsi login, logout dan proteksi halaman

Selanjutnya adalah mengetes fungsi-fungsi yang telah dibuat tadi. Mulai dari proteksi halaman, login, login gagal dan logout.

  • Untuk mengetes proteksi halaman buka http://localhost/login. Maka Anda akan langsung diahlikan ke halaman http://localhost/login/login dengan notifikasi pesan Anda belum login. Ini karena Anda belum login

    Kursus Codeigniter Depok - Java Web Media
    Kursus Codeigniter Depok – Java Web Media
  • Masukkan username dan password yang salah, maka pesan error akan muncul

    Kursus Web Programming - Java Web Media
    Kursus Web Programming – Java Web Media
  • Masukkan username dan password yang benar, maka Anda akan dialihkan ke halaman Dasbor (http://localhost/login). Nama atau username orang yang login akan tampil di bagian atas area header.

    Kursus Framework PHP - Java Web Media
    Kursus Framework PHP – Java Web Media
  • Untuk Logout, klik link/tombol Logout yang ada di area header, maka Anda akan logout
Kursus Web Development Depok - Java Web Media
Kursus Web Development Depok – Java Web Media

Mendownload hasil akhir kode

Anda dapat mendownload hasil akhir tutorial Bagian 4 ini di: https://drive.google.com/file/d/0B5BhV6c89_2YbWM4MzJnbTJvVUU/view?usp=sharing.

29 thoughts on “Tutorial Codeigniter 3 – Membuat Halaman Login: Bagian 4 – Login, Logout dan Proteksi Halaman”

  1. Anonim says:
    August 16, 2015 at 2:53 pm

    kalau membuat 2 akses yang berbeda gimana gan..? misalnya member & admin..
    mohon pencerahannya…

    Reply
    1. Abdur says:
      October 3, 2016 at 10:51 am

      cek sajak

      Reply
  2. bobby says:
    September 7, 2015 at 10:47 am

    bagus-bagus sekali tutorial nya cocok untuk pemula seperti saya yg ingin belajar CI..
    apakah bisa di buatkan tutorial untuk upload image yang terkoneksikan dengan database nya

    terima kasih.

    Reply
  3. donny says:
    January 18, 2016 at 2:31 pm

    klo session login yang ditampilkan dari field nama dan bukan username bagaimana?

    Reply
  4. Cathryn Mott says:
    March 6, 2016 at 1:00 pm

    Great post.

    Reply
  5. Tayla Taft says:
    March 13, 2016 at 9:55 pm

    Neither mistress” nor Mrs” bore any marital connotation whatsoever for Dr. Johnson.

    Reply
  6. Brigette Vann says:
    March 14, 2016 at 3:02 am

    I actually focused on his directions. Ate Claudine and I would frequently throw lines at each other.

    Reply
  7. Lelia FitzRoy says:
    March 27, 2016 at 2:47 am

    Okay!

    Reply
  8. Kathlene Silverman says:
    April 11, 2016 at 11:01 am

    The operation of an electrical nail gun can also be a lot quieter than a pneumatic nail gun.

    Reply
  9. joko says:
    April 22, 2016 at 8:01 am

    wah tutorial yang menarik dan bagus

    Reply
  10. Rae Ruth says:
    May 12, 2016 at 1:05 pm

    Thanks to my father who told me concerning this web site, this website is in fact awesome.

    Reply
  11. Scarlett Matson says:
    May 25, 2016 at 8:11 pm

    There are a variety of on a regular basis and on-the-job activities from which you’ll learn about supervision and even improve your supervision expertise.

    Reply
  12. Johnny Prichard says:
    May 29, 2016 at 2:34 pm

    Excellent site you’ve got here.. It’s hard to find high quality writing like yours nowadays. I truly appreciate people like you! Take care!!

    Reply
  13. Emory Janousek says:
    May 29, 2016 at 7:29 pm

    All to security which was maybe not utilized extremely, which can trigger host overburden, ensuing when you look at the failure to utilize Hack.

    Reply
  14. Rogelio Rodman says:
    May 31, 2016 at 5:41 pm

    Wonderful beat ! I wish to apprentice while you amend your website, how could i subscribe for a blog website? The account helped me a acceptable deal. I had been tiny bit acquainted of this your broadcast offered bright clear concept

    Reply
  15. Edna Broger says:
    June 15, 2016 at 11:41 pm

    a Bengals histrion who unconnected onto the pavement. They told me this spot, you barely make to protrude ‘s common turn back on a inferior, achievement-nonvoluntary auditory communication visual communication. And point had to get several big book. He shows off author’ accelerate, knowledge and find. It’s around Green Bay Packers Jersey Overnight Shipping Knicks Jerseys For Cheap Blue Jays Jerseys Toronto The city Grizzlies are nigh the roster. – The matchup against the Falcons formation. His part that Shane Vereen caught 11 passes for 46 yards. In period of time 4, Cassel threw for 457 yards and no former science performer than urban center’s — but for me to be a fun guy

    Reply
  16. Maurice Machado says:
    November 19, 2016 at 10:38 am

    9:58 am: Two mins.

    Reply
  17. Annie Prosser says:
    January 20, 2017 at 11:42 pm

    Great article.

    Reply
  18. Rebecca Glauert says:
    March 5, 2017 at 8:33 am

    It’s in fact very complicated in this busy life to listen news on TV, therefore I only use world wide web for that reason, and get the newest news.

    Reply
  19. galih says:
    July 26, 2017 at 1:01 pm

    om klau user sudah login ,saat akses halaman login langsung redirect ke dashboar lagi gimana.??

    Reply
  20. Pingback: Igniter Login | LOGINSPENT
  21. Pingback: Igniter Login – Brooklyngir Leatery
  22. Pingback: Codeigniter Login | Near Login
  23. bg_poels says:
    May 17, 2020 at 5:54 pm

    nanya gan… saya sudah berhasil membuat form login, sudah bisa login dan logout dengan normal cuma,,, ada yang aneh gan… kenapa saya bisa akses menu tanpa login gan? saya langsung pastekan url dihalaman browser dan langsung masuk gan, padahal tiap halaman menggunakan script ini <?php defined('BASEPATH') OR exit('No direct script access allowed');

    mohon dibantu gan. terimakasih

    Reply
  24. Pingback: Igniter Login | Near Login
  25. Pingback: Igniter Login – Login Official Database
  26. Andi says:
    September 4, 2020 at 7:56 am

    Informasi ini menarik

    Reply
  27. setiawan says:
    September 10, 2020 at 3:14 am

    ussername dan password sudah benar, tapi salah dan benarpun kenapa diarahkan kesini terus bro,
    localhost/login/login

    Reply
  28. Pingback: Igniter Login | Instans Login

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Recent Posts

  • DISADVANTAGES OF THE PHP LANGUAGE
  • Bootstrap Version 5: What Should We Expect?
  • Perbedaan CSS, LESS dan SASS
  • Tren Teknologi 2020 Kecerdasan Buatan dan 5G Berkembang Pesat
  • Mengetahui Pekerjaan System Analyst

Categories

  • Adobe Illustrator
  • Code Igniter Depok
  • Composer
  • CSS
  • Decor
  • Design
  • Dreamweaver
  • Dynamic Website
  • Javascript
  • Kursus Codeigniter 3
  • Kursus Graphic Design Depok
  • Kursus Laravel
  • Kursus Statistik
  • Kursus Web Design di Depok
  • Laravel
  • Login
  • Login Codeigniter
  • MySQL
  • PHP
  • PHP MySQL
  • PHP MySQL
  • Programmer
  • Spry Menu Bar
  • SPSS
  • STATA
  • Statistik
  • Tips Progammer
  • Tutorial
  • Tutorial Codeigniter
  • Tutorial Laravel
  • Uncategorized
  • Upload File
  • Web Course Depok
  • Web Design
  • Web Design
  • Web Design Depok
  • Web Design Depok
  • Web Design di Kota Depok
  • Web Programming
  • Web Programming Depok
  • Web Server
  • Website
  • Wirausaha

Java Web Media

Pusat Kursus Private dan Reguler bidang Desain Grafis, Web Programming, Mobile Application dan Statistik

Java Web Media
MALL DEPOK TOWN SQUARE
Lantai 2 Unit SS1 No. 5-7
Jl. Margonda Raya No 1 Kota Depok
Jawa Barat 16424
Telepon: 085715100485
Whatsapp: +6281210697841
Email: contact@javawebmedia.co.id
Email: javawebmedia@gmail.com

Pendaftaran Kursus

Tanya Kursus Programming (+6285715100485)

Tanya Kursus Statistik (+6285716275299)

Formulir Pendaftaran

©2021 Blog Java Web Media | Powered by SuperbThemes & WordPress