145
6 7
8 9
10 11
12 13
publicfunction do_update
{ judul
= _POST
[ judul
]; konten
= _POST
[ konten
]; id
= _POST
[ id
]; this
- load
- model
web_model ;
this -
web_model -
update_artikel judul
, konten
, id
; redirect
base_url .
index.phpadmin ;
}
3. Jalankan program dan tampilkan serta analisis hasilnya
6. Membangun perintah untuk hapus artikel
1. Tambahkan kode seperti dibawah ini dalam class Admin file Admin.php
C:xampphtdocsmyproyekapplication
1 2
3 4
5 6
publicfunction do_hapus
id {
this -
load -
model web_model
; this
- web_model
- hapus_artikel
id ;
redirect base_url
. index.phpadmin
; }
2. Jalankan program dan tampilkan serta analisis hasilnya
E. Studi Kasus
Rancanglah sebuah halaman kontak yang nantinya berfungsi untuk pengiriman pesan oleh pengunjung web kepada admin, pesan dikirim
melalui form halaman kontak, dan semua pesan yang dimasukan akan muncul dalam bentuk daftar pada halaman admin Untuk antarmuka dari
halaman kontak dan admin anda dapat menggunakan hasil dari studi kasus pada Kegiatan Pembelajaran pertama.
F. Rangkuman
Back-End web adalah bagian utama dari sebuah web site yang berfokus pada pemrograman sisi-server dan database. Segala fitur yang ada pada web
dinamis seperti mengambil data, memasukan data, menghapus data dan mengupdate data adalah dibangun pada bagian back-end development.
Seorang back-end developer minimal menguasai pemrograman sisi-server seperti PHP dan DBSM seperti MySQL.
146
G.
147
148
Membangun Sistem Autentikasi
A. Tujuan Pembelajaran
Melalui praktikum diharapkan peserta diklat dapat menerapkan sistem autentifikasi pada aplikasi atau dokumen web.
B. Indikator Pencapaian Kompetensi
Menerapkan sistem autentifikasi pada aplikasi atau dokumen web
C. Uraian Materi
Autentikasi adalah proses dalam rangka validasi user pada saat memasuki sistem, nama dan password dari user di cek melalui proses yang
mengecek langsung ke daftar mereka yang diberikan hak untuk memasuki sistem tersebut. Autorisasi ini di set up oleh administrator, webmaster atau
pemilik situs pemegang hak tertinggi atau mereka yang ditunjuk di sistem tersebut. Untuk proses ini masing-masing user akan di cek dari data yang
diberikannya seperti nama, password serta hal-hal lainnya yang tidak tertutup kemungkinannya seperti jam penggunaan, lokasi yang diperbolehkan.
Autentikasi merupakan suatu langkah untuk menentukan atau
menginformasi bahwa seseorang adalah autentik atau asli. Melakukan autentikasi terhadap sebuah objek adalah melakukan konfirmasi terhadap
kebenarannya. Sedangkan melakukan autentikasi terhadap seseorang biasanya adalah untuk memverifikasi identitasnya. Pada suatu sistem
komputer, autentikasi biasanya terjadi pada saat login atau permintaan akses. Dalam aplikasi Web dibutuhkan mekanisme yang dapat melindungi data
dari pengguna yang tidak berhak mengaksesnya, misalnya sebuah situs Web yang berisikan foto-foto keluarga dan hanya dapat diakses sesama anggota
keluarga. Mekanisme ini dapat diimplementasikan dalam bentuk sebuah proses login yang biasanya terdiri dari tiga buah tahapan yaitu : identifikasi,
otentikasi dan otorisasi. Proses otentifikasi pada prinsipnya berfungsi sebagai kesempatan
pengguna dan pemberi layanan dalam proses pengaksesan resource. Pihak pengguna harus mampu memberikan informasi yang dibutuhkan pemberi
layanan untuk berhak mendapatkan resourcenya. Sedang pihak pemberi
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