Saturday, 17 May 2014

Memahami MVC dengan Codeigniter bag.3 ( Membuat Login User Sederhana )

Pada bagian ini akan dijelaskan langkah-langkah sederhana membuat user login dan menyimpannya kedalam session.

Pertama Kita buat table users:

Lalu kita masukkan data user.


Configure Codeigniter, Database access

Ubah file application/config/database.php sesuai dengan informasi database yang diinstall di komputer yang digunakan.


Default Controller

Default controller adalah file (class) controller yang akan dibaca/load diawal ketika kita pertama kali membuka application. Default controller pada settingan awal codeigniter adalah file controller welcome. Untuk mengubahnya buka file application/config/routes.php ubah menjadi seperti ini:

$route['default_controller'] = "login";

Default Libraries

Pada file application/config/autoload.php kita dapat menambahkan beberapa file (class) libraries yang dibutuhkan untuk diload dan juga load beberapa class helper.

Jika kita load class session pada framework codeigniter, kita membutuhkan encryption_key untuk diisi. Buka file application/config/config.php isi "encryption_key" dengan key yang anda inginkan.


Membuat file controller login.php

Buat file dengan code seperti dibawah:

Setiap kali aplication web di load file ini yang akan dibaca pertama kali dengan membaca function index, pada function index kita membuat suatu kondisi, apakah session user logged_id sudah dibuat. Bila kondisi ini bernilah TRUE halaman akan diarahkan ke halaman home namun jika sebaliknya aplikasi akan menampilkan halaman login user.


Buat file login_view.php

Selanjutnya adalah membuat view login sebagai tampilan antarmuka untuk pengguna, ikuti code di bawah:

Ini adalah tampilan loginnya.


Membuat process login

Setelah form loginnya dibuat sekarang kita akan handle process loginnya. Tambahkan code function ini pada file controller/login.php

Apa yang dilakukan oleh code ini adalah menangkap event click login dari form login yang memang diarahkan ke function ini, pertama-tama kita load code model "login_model". Lalu kita membuat validation memanfaatkan function dari form validation codeigniter. Jika form validation bernilai TRUE data akan disimpan kedalam array(), lalu kita memanggil function validates dari login_model yang telah diload di atas. Jika data user yang dimasukkan telah terdaftar function ini akan mengembalikan nilai TRUE dan mengarahkan kehalam Home. Namun jika bernilai FALSE user akan diminta mengulangi input email dan password.


Membuat file login_model.php

File model kita buat untuk pengecekan data user, lihat code berikut:

Function validates bertugas untuk melakukan pengecekan ke database dan melihat apakah data yang diberikan tersedia di table users, selanjut jika data tersedia di dalam table data disimpan di dalam session, dengan nama "logged_id". Lalu function mengembalikan nilai TRUE. Jika data tidak tersedia function akan mengembalikan nilai FALSE.


Membuat controller login.php

Selanjutanya adalah membuat file class controller home, class ini akan menghandle user yang telah melakukan login. Lihat code berikut:

Pada function index, ada kondisi yang mengecek apakah session telah dibuat, jika belum akan dikembalikan ke login page namun bila sebaliknya akan diarahkan ke home page.

Function kedua adalah logout, untuk keluar dari kondisi login dan menghapus semua session informasi user yang telah login.


Membuat file view home.php

Langkah terakhir adalah membuat view home, lihat code berikut:

Jalankan aplikasi dan lakukan pengetesan user login. Jika berhasil akan menampilkan tampilan seperti ini:

Silankan beri komentar jika ada code yang salah atau kurang tepat, dan ingin memberi masukan. Atau jika ingin memesan tutorial.

2 comments:

  1. Artikel keren, pemanfaatan session yang bagus untuk login...
    Lanjutkan bro ...

    ReplyDelete