Uraian Materi Tambahkan kode seperti dibawah ini dalam class Admin file Admin.php

149 layanan harus mampu menjamin bahwa pihak yang tidak berhak tidak akan dapat mengakses resource ini.

D. Aktifitas Pembelajaran 1. Identifikasi Kasus

Pada Kegiatan Pembelajaran yang ke-12, telah dijelaskan bagaimana membangun sebuah halaman admin, akan tetapi aplikasi tersebut masih belum sempurna, karena semua user tanpa terkecuali bisa mengakses halaman tersebut, hal ini menjadi masalah karena seharusya halaman admin hanya bisa diakses oleh pihak-pihak yang memiliki kewenangan saja. Pada Kegiatan Pembelajaran kali ini kita akan membangun sebuah system autentikasi, yang memberi batasan terhadap user untuk bisa mengakses halaman admin. User yang bisa mengakses halaman admin harus login terlebih dahulu dengan memasukan username dan password.

2. Membangun Sistem authentifikasi

1. Buka file autoload.php pada folder config, aktifkan libraries session

autoload[libraries] = arraydatabase, session; 2. Buat tabel pada database myproyek dengan nama akun dengan field id, username dan email.

3. Buat class controller Login, tulis kode dibawah ini dan simpan dengan nama Login.php

C:xampphtdocsmyproyekapplication 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ?php defined BASEPATH ORexit No direct script access allowed ; class Login extends CI_Controller { publicfunction index { this - load - view login ; } publicfunction validasi_user { username = _POST [ username ]; password = md5 _POST [ password ]; this - load - model akun_model ; query = this - akun_model - verifikasi_data username , password ; if query - num_rows { data_user = array username = username , logged_in = TRUE ; this - session - set_userdata data_user ; 150 18 19 20 21 22 23 24 25 26 27 28 redirect admin ; } else { header location: . base_url . index.phplogingagal_login ; } } publicfunction gagal_login { echo Password atau username salah, Silahkan periksa kembali ; } }

4. Buka file login.html, tuliskan kode dibawah ini, kemudian simpan dengan nama login.php

C:xampphtdocsmyproyekapplication 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 DOCTYPE html html lang = en head meta charset = utf-8 meta name = viewport content = width=device-width, initial-scale=1 title Signin title -- Bootstrap core CSS -- link href = ?php echo base_url ? assetscssbootstrap.min.css rel = stylesheet link href = ?php echo base_url ? assetsstylesignin.css rel = stylesheet head body div class = container form class = form-signin action = ?php echo base_url ? index.phploginvalidasi_user method = POST h2 class = form-signin-heading Silahkan masuk h2 label for = text class = sr-only Alamat Email label input name = username type = text id = username class = form- control placeholder = Username requiredautofocus label for = inputPassword class = sr-only Password label input name = password type = password id = inputPassword class = form- control placeholder = Password required div class = checkbox label input type = checkbox value = remember-me Ingat saya label div button class = btn btn-lg btn-primary btn-block type = submit Sign in button form div -- container -- body html

5. Buat class Akun_model, tuliskan code dibawah ini, simpan dengan nama Akun_model.php

C:xampphtdocsmyproyekapplication