Bab 4 Pembahasan Dan Hasil Pengujian 4.1 Implementasi Aplikasi Pada Bab 4 ini akan dijelaskan bagaimana cara kerja aplikasi program untuk pemodelan system registrasi terpadu berbasis web menggunakan web service
yang telah dibangun dan hasil
implementasinya mengacu pada desain system pada Bab 3. 4.1.1 Form Registrasi Mahasiswa Ke Web Service UKSW Pertama-tama mahasiswa UKSW diharuskan mendaftar pada UKSW service untuk menggunakan layanan login diberbagai tempat dengan satu akun UKSW.
Gambar 4.1 Registasi Mahasiswa ke UKSW_service
31
Pada form di atas, mahasiswa diharuskan mengisi Nim, Password (Nim dan Password ini adalah Nim dan Password SIASAT). Diambil dari tabel utama atau tabel asli data mahasiswa milik UKSW. Sedangkan email, jika pada data asli mahasiswa sudah terdaftar email miliknya, maka mahasiswa tidak perlu mengisi email. Sedangkan
jika
belum
mendaftarkan
email
pada
database
asli/SIASAT. Mahasiswa diharuskan mengisi email. Berikut tabel data asli mahasiswa (tabel ini hanya sebagai simulasi):
Gambar 4.2 Data Simulasi Mahasiswa UKSW
Kemudian tabel tersebut akan dicopykan ke tabel uksw_service sebagai alasan keamanan. Untuk pengcopyan tersebut, yaitu menggunakan teknologi webservice. Berikut tabel uksw_service yang masih kosong (sebelum ada mahasiswa yang teregistrasi):
32
Gambar 4.3 Data mahasiwwa yang terdaftar di UKSW service pada database
Beberapa data yang penting akan dicopykan ke tabel di atas dan seterusnya agar user dapat mengakses website lain dengan akun yang diakses dari tabel tersebut dan bukan tabel UKSW yang sebenarnya supaya keamanan dan validitas data mahasiswa terjamin. Berikut contoh pendaftaran beserta contoh koding: Pada kasus ini penulis menggunakan nim 672008223 yang sudah ada pada tabel asli UKSW, untuk mendaftar pada UKSW SERVICE (email tidak diisi karena sudah ada), sebaliknya jika email belum ada, maka wajib diisi.
33
Gambar 4.4 Regitrasi Mahasiswa ke UKSW service
Berikut kodenya:
Gambar 4.5 koding registrasi mahasiswa ke uksw service
Penjelasan Kode: -
Penulis menggunakan framework codeigniter dengan bahasa pemrograman PHP 34
-
Pada baris 7, berfungsi untuk mengarahkan form ke controller member dengan function register saat tombol disubmit
-
Pada baris 8, form error berfungsi untuk menganalisa kesalahan input (misalnya data tidak diisi atau isian kurang dari jumlah yang ditentukan). Jadi jika user salah mengisi, maka pesan error akan muncul
-
Pada baris 11, yaitu inputan user NIM. Di sini name nya username. Berguna untuk mengirim POST berupa data username yang diisikan user
-
Baris selanjutnya penjelasan dan fungsinya hampir sama
-
Kemudian data diarahkan ke controller member
Gambar 4.6 koding registrasi mahasiswa ke uksw service
35
- Pada baris 69 berfungsi memanggil fungsi validasi, jika benar maka data diproses, jika salah, maka akan diredirect ke baris 90 yaitu ke halaman sebelumnya berikut pesan errornya - Baris 71 akan dieksekusi jika validasi benar, atau inputan user tidak
salah.
Kemudian
akan
memanggil
fungsi
$this-
>webservice->call(„register‟, $data) yang berarti memanggil webservice dengan fungsi register dan parameternya adalah array $data. Yaitu username diambil dari inputan POST username ('username' => $this->input->post('username'),) dan seterusnya. - $this->webservice->call(„register‟, $data), adalah function untuk memanggil class berikut
Gambar 4.7 koding registrasi mahasiswa ke uksw service
-
Dari kode di atas terlihat function call yang dipanggil. Pada baris 25 penulis menggunakan webservice SOAP yang diakses dari WSDL webservice pada baris 11 36
Berikut ini adalah function webservice yang dipanggil:
Gambar 4.8 koding registrasi mahasiswa ke uksw service (function webservice)
-
Pada baris 35 function memanggil parameter username, password, dan email. Ini sesuai dengan inputan user sebelumnya (untuk diperhatikan password
menggunakan
enkripsi sha1) -
Pada baris 36 digunakan untuk mengirim code verifikasi email
-
Baris 37-50 digunakan untuk membandingkan inputan user dengan data sebenarnya pada tabel uksw.
-
Baris 52 digunakan untuk mengecek apakah user tersebut sudah memiliki email pada tabel asli UKSW (function ini hanya berjalan apabila data inputan user sudah sesuai dengan data pada tabel asli UKSW dan email mahasiswa tersebut belum ada)
37
-
Jika baris 52 bernilai TRUE, maka data akan diinput ke tabel UKSW_SERVICE. (di sini mahasiswa belum aktif, lihat pada baris 61, setActive=0).
Gambar 4.9 koding registrasi mahasiswa ke uksw service
-
Baris 70 digunakan untuk pengecualian jika username sudah ada pada tabel UKSW_SERVICE. Atau sudah terdaftar tapi user yang bersangkutan belum mengaktifkan akun-nya.
-
Baris 71 digunakan untuk memperoleh kode yang diisikan pada tabel UKSW_SERVICE (setiap user mendaftar maka tabel member pada database UKSW_SERVICE akan terisi kolom codenya)
Gambar 4.10 data member pada database UKSW service
38
-
Kemudian baris 74 digunakan untuk mengirim email ke user yang bersangkutan. Email tersebut berisi code dari database tabel mahasiswa kolom code.
Gambar 4.11 koding registrasi mahasiswa ke uksw service
-
Baris 93 digunakan untuk mengecek apakah user tersebut sudah memiliki email pada tabel asli UKSW (function ini hanya berjalan apabila data inputan user sudah sesuai dengan data
39
pada tabel asli UKSW dan email mahasiswa tersebut SUDAH ada) Untuk lebih jelasnya, silakan lihat pada saat penulis melakukan atau mensubmit tombol register.
Gambar 4.12 Registrasi Confirmation
- Pada gambar di atas terlihat bahwa user diharuskan mengisi konfirmasi kodenya, kode tersebut dikirm ke email, berikut rinciannya
Gambar 4.13 kode konfimasi pada email
40
-
Kemudian jika user tidak mengisi dengan benar
Gambar 4.14 Registrasi berhasil (inputan benar)
Tampilan di atas dikarenakan function webservice mengembalikan return value berupa Boolean yang bernilai FALSE -
Jika user mengisikan kode konfirmasi dengan benar:
Gambar 4.15 Registrasi berhasil (inputan benar)
41
Gambar 4.16 Registrasi berhasil
-
User berhasil terdaftar karena webservice mengembalikan nilai TRUE, dan lihat data pada database UKSW_SERVICE tabel member sekarang terisi, berikut value active berubah menjadi “1” yang berarti sudah aktif.
Gambar 4.17 Tabel member pada database UKSW service
42
-
Penulis mencoba untuk login dengan akun tersebut untuk mengakses informasi penulis
Gambar 4.18 Mahasiswa Login ke UKSW service
- Maka data diri lengkap akan tampil berikut foto mahasiswa yang bersangkutan
Gambar 4.19 Data diri Mahasiswa
43
-
Berikut kode untuk login: (C:\xampp\htdocs\uksw_register\application\views\include\login .php).
Gambar 4.20 Koding Login Mahasiswa ke UKSW service
-
Pada baris 26 form diarahkan ke controller member dengan function login
-
Pada baris 28 dan 29 berupa inputan user yang nantinya akan dikirimkan ke controller.
-
Berikut controllernya: (C:\xampp\htdocs\uksw_register\application\controllers\membe r.php)
44
Gambar 4.21 Koding Login Mahasiswa ke UKSW service (Controller)
-
Pada baris 11, controller memanggil model “member_model” dengan
function
login
(C:\xampp\htdocs\uksw_register\application\models\member_ model.php)
Gambar 4.22 Koding Login Mahasiswa ke UKSW service (Function Login)
-
Di atas adalah tampilan model dengan function login
-
Pada baris 18-21 penulis set username dan password dari inputan user
-
Pada baris 22 panggil webservice dengan function loginUksw dan parse kan parameter array $data
45
-
Berikut
webservicenya
(C:\xampp\htdocs\uksw_service\member_uksw.php).
Gambar 4.23 Koding Login Mahasiswa ke UKSW service (Function Login & parse)
-
Pada baris 157 penulis create instance class member dao
-
Kemudian baris 158 panggil function getAuth() dari class member_dao. Function tersebut sebenarnya mengambil data dari tabel UKSW_SERVICE.member. $result berarti query untuk men-SELECT dimana username=inputan user, dan password=inputan user password, dan active=1
-
Kemudian baris 164 $count berfungsi menghitung berapa data yang didapat dari query baris 158
-
Baris 165 berfungsi untuk mengambil data dalam bentuk object
-
Baris 160 berfungsi untuk menghitung value dari $count. Apabila $count lebih dari 0 maka data benar-benar ditemukan
46
atau login benar. Dan webservice mengembalikan return value berupa STRING bernilai „auth‟ -
Baris 163 dijalankan apabila inputan username dan password benar, tetapi user tersebut belum aktif.
-
Kemudian baris 169 digunakan untuk mengirim ulang email kepada
username
yang
bersangkutan.
Dan
webservice
mengembalikan return value berupa STRING dengan value „cek_email‟ -
Baris 172 dijalankan apabila username dan password inputan user salah, maka return webservice berupa BOOLEAN FALSE
-
Kemudian kembali ke model tadi
-
(C:\xampp\htdocs\uksw_register\application\models\member_ model.php)
Gambar 4.24 Koding Login Mahasiswa ke UKSW service (Function Login)
-
Baris 23 digunakan untuk me return data result dari webservice tadi ke controller
-
Kembalike controller:
-
(C:\xampp\htdocs\uksw_register\application\controllers\membe r.php)
47
Gambar 4.25 Koding Login Mahasiswa ke UKSW service (Controller)
-
Pada controller baris 11, $result berisi return value dari model yang diambil dari web service sebelumnya
-
Baris 12, dipanggil jika result bernilai „auth‟
-
Maka baris 13-21 berguna untuk men-set SESSION is_login. Jadi user dianggap telah berhasil login
-
Baris 21 user diarahkan ke PROFILE seperti gambar sebelumnya
Gambar 4.26 Profile mahasiswa
48
-
Baris 24 dieksekusi apabila webservice dan model me return value „cek_email‟
-
Seperti yang sudah dikatakan sebelumnya web service me return „cek_email‟ dikarenakan user belum aktif. Silakan coba daftarkan username 672008111 dan password 12345 untuk mengetest. Dan jangan aktifkan emailnya, kemudian loginkan user tersebut. Maka baris 31 akan di eksekusi dan tampilan akan sebagai berikut :
Gambar 4.27 Registrasi Confirmation (inputan salah)
Dan lain halnya jika username dan password SALAH, maka baris 32-34 dieksekusi
49
Gambar 4.28 Registrasi Confirmation (inputan salah)
4.1.2 Web Perpustakaan Simulation Berikut tampilan website perpustakaan simulasi
Gambar 4.29 Web perpustakaan
50
Berikut database dan tabel yang terdapat pada perpustakaan a. Tabel member Umum
Gambar 4.30 table member Umum pada database perpustakaan
b. Tabel member yang terdaftar dari UKSW_SERVICE
Gambar 4.31 Tabel member yang terdaftar dari UKSW service
51
Sebelum menggunakan website ini, user dapat mendaftarkan diri pada perpustakaan baik dengan akun uksw atau sebagai member biasa Pertama penulis akan menjelaskan alur dari pendaftaran member umum
Gambar 4.32 registrasi member Umum pada web perpustakaan
Berikut code view nya: (C:\xampp\htdocs\perpus\application\views\member\register_view.php)
52
Gambar 4.33 koding registrasi member Umum pada web perpustakaan
-
Pada baris 5 diarahkan ke controller member dengan function register
-
Pada baris 8-selesai username, nama dsb adalah data yang dikirimkan berikut validasinya seperti gambar berikut
53
Gambar 4.34 registrasi member Umum pada web perpustakaan (Validasi)
Berikut code Controllernya (C:\xampp\htdocs\perpus\application\controllers\member.php)
Gambar 4.35 koding registrasi member Umum pada web perpustakaan (controller)
54
-
Pada baris 177 berfungsi untuk memvalidasi inputan, jika baris 177 bernilai TRUE maka lanjut ke baris berikutnya
-
178-185 berfungsi untuk mengambil inputan user dan menjadikannya array
-
Kemudian 186 memanggil Model “member_model” dan function register dengan parameter $data
-
Kemudian baris 187 dan 188 dieksekusi bila member_model->register berhasil dieksekusi, jika 188 dieksekusi maka akan diredirect ke halaman buku
Berikut modelnya yang dipanggil dari baris 186 di atas : (C:\xampp\htdocs\perpus\application\models\member_model.php)
Gambar 4.36 Koding Registrasi Member Umum pada web perpustakaan (model)
-
Baris 20 adalah function codeigniter database untuk inserting data. Data yang diinsert adalah data array dari controller sebelumnya
-
Berikut tampilan jika register berhasil
55
Gambar 4.37 registrasi member Umum pada web perpustakaan
Gambar 4.38 registrasi member Umum pada web perpustakaan berhasil
-
Lihat database perpus.member, username bambang akan terdaftar
56
Gambar 4.39 data member pada database perpus
Sekarang penulis akan menjelaskan alur login dengan member Umum Berikut prosesnya: -
Inputkan username bambang dengan password bambang seperti yang sudah didaftarkan tadi
Gambar 4.40 Login user umum
-
Kemudian tampilan jika berhasil login
Gambar 4.41 Login user umum berhasil
Alur kode sebagai berikut, mula-mula dari view : (C:\xampp\htdocs\perpus\application\views\include\header.php)
57
Gambar 4.42 Koding Login user umum
-
Pada baris 95 form diarahkan ke controller member dengan function login
-
Pada baris 96-98 seperti biasa berupa inputan user yang juga diarahkan ke controller
Berikut
controllernya
(C:\xampp\htdocs\perpus\application\controllers\member.php)
Gambar 4.43 Koding Login user umum
-
Baris 130 dan 131 mengambil inputan user
-
Baris 133 mengarah ke model dan mendapatkan hasil querynya apakah true/false
58
-
Baris 134 jika true maka set session dan redirect pada baris 140 ke halaman buku
-
Baris 141 jika false maka akan terdapat pesan error dan kembali ke halaman buku redirect pada baris 143
Berikut model untuk login (C:\xampp\htdocs\perpus\application\models\member_model.php)
Gambar 4.44 Koding Login user umum
-
Select dimana username dan password sama dan baris 11 dapatkan jumlah row yang diperoleh
-
Baris 12, jika lebih dari nol, maka return true ke controller
-
Baris 15 jika sama dengan nol, maka return false ke controller
Sekarang penulis akan menjelaskan alur login dengan uksw service Berikut alur jalannya program halaman awal login
Gambar 4.45 Login user Mahasiswa UKSW
59
-
jika belum terdaftar pada uksw service maka klik link yang penulis block, sehingga diarahkan ke halaman berikut
-
gunakan login dengan akun yang sudah penulis tadi daftarkan pada UKSW_SERVICE
-
jika login benar maka tampilan pada web perpustakaan sebagai berikiut:
Gambar 4.46 Login user Mahasiswa UKSW ke perpus
-
Kemudian user akan mendapat kode verifikasi pada email,tampilannya sebagai berikut:
Gambar 4.47 kode konfirmasi yang dikirim ke email
-
Jika verifikasi code sudah diinputkan, terdapat konfirmasi sbb
Gambar 4.48 Registrasi mahasiswa UKSW berhasil
60
-
Pada database PERPUS tabel member_uksw data masuk, tampilannya sebagai berikut:
Gambar 4.49 tabel member uksw pada database perpus
-
Jika login berhasil, maka user sudah dapat mengakses web perpustakaan, tampilannya sebagai berikut:
Gambar 4.50 Login mahasiswa ke perpus berhasil
penjelasan
kode
view
(C:\xampp\htdocs\perpus\application\views\include\header.php)
Gambar 4.51 koding header
-
baris 105 form mengarah ke controller member dengan function service_login 61
-
106-108 adalah inputan user
Penjelasan controller (C:\xampp\htdocs\perpus\application\controllers\member.php)
Gambar 4.52 koding member
-
Pada baris 19-20 ambil inputan user
-
Baris 28 panggil webservice dengan function login
-
Baris 30, jika webservice return STRING “auth” maka webservice memanggil function getmember pada baris 35
62
Gambar 4.53koding member (pemanggilan function get member)
-
Kemudian baris 56 menset session user telah login
-
Baris 57 redirect ke buku
-
Baris 58 jika webservice me return value selain false yang berarti user benar-benar ada pada database UKSW_SERVICE tabel member tetapi belum ada di database PERPUS tabel member_uksw, maka akan dikirimkan email beserta konfirmasi kodenya untuk mengaktifkan
-
Baris 67 yang berarti webservice me return false maka akan ada pesan error dan diredirect ke halaman awal
Penjelasan webservice (C:\xampp\htdocs\perpus\application\libraries\webservice.php) Gambaran library webservice yang memanggil web service NUSOAP server
63
Gambar 4.54 koding member (pemanggilan web service NUSOAP)
-
Baris 11 panggil alamat webservice http://localhost/uksw_service/member_service.php?wsdl
-
Kemudian pada webservice servernya yaitu UKSW_SERVICE sbb:
-
Untuk memanggil library NUSOAP (adalah library webservice yang didownload dari internet)
64
Gambar 4.55 koding member (pemanggilan web service NUSOAP)
-
Di atas adalah kode member_service function login
-
Baris 20 memanggil class Member_website_dao
-
Baris 21 memanggil function login dan parse ke variable $result
-
Baris 22-23 jika login bernilai “auth” maka return “auth” yang nantinya diambil ke controller yang memanggil webservice ini
-
Baris 24-25 jika login bernilai “!false” atau bukan false maka akan mengembalikan bukan false
-
Baris 26 jika login bernilai “false” maka akan mengembalikan false ke controller yang mengakibatkan user tidak bisa login
65