Anda di halaman 1dari 88

Konsentrasi : WEM

RANCANG BANGUN SISTEM INFORMASI FORUM DISKUSI


GAME ONLINE BERBASIS WEB DAN MOBILE

Laporan Tugas Akhir

ALIFFATHUR RISQI HIDAYAT


5180411327

PROGRAM STUDI INFORMATIKA


FAKULTAS SAINS & TEKNOLOGI
UNIVERSITAS TEKNOLOGI YOGYAKARTA
2022

0
HALAMAN PENGESAHAN
RANCANG BANGUN SISTEM INFORMASI FORUM DISKUSI
GAME ONLINE BERBASIS WEB DAN MOBILE

Disusun oleh

ALIFFATHUR RISQI HIDAYAT


5180411327

Telah dipertahankan di depan Dewan Penguji


pada tanggal .……………

DEWAN PENGUJI

Tanda
Nama & Gelar Jabatan Tanggal
Tangan

Suhirman, S.Kom., M.Kom., Ph.D.


Ketua Penguji ……… ………
NIK. 110698023

Ahmad Tri Hidayat, S.Kom., M.Kom.


Penguji I ……… ………
NIK. 110918164

Saucha Diwandari, S.Kom., M. Eng. Penguji II


……… ………
NIK. 110717134 (Dosen Pembimbing)

Yogyakarta, .……………
Ketua Program Studi Informatika

Dr. Enny Itje Sela, S.Si., M.Kom.


NIK. 111116086
ii
LEMBAR PERNYATAAN

Yang bertandatangan dibawah ini, saya


Nama : Aliffathur Risqi Hidayat
NPM : 5180411327
Program Studi : Informatika
Program : Sarjana
Fakultas : Sains & Teknologi
Menyatakan bahwa tugas akhir dengan judul Racang Bangun Sistem
Informasi Forum Diskusi Game Online Berbasis Web dan Mobile ini adalah karya
ilmiah asli saya dan belum pernah dipublikasikan oleh orang lain, kecuali yang
tertulis sebagai acuhan dalam naskah ini dan disebutkan dalam daftar pustaka.
Apabila di kemudian hari karya saya dinyatakan bukan karya saya, maka saya
bersedia menerima konsekuensi dari yang telah ditetapkan Program Studi
Informatika Fakultas Sains & Teknologi Universitas Teknologi Yogyakarta.

Demikian surat pernyataan ini saya buat dengan sebenarnya.

Dibuat di : Yogyakarta
Pada tanggal : 11 Juni 2022
Yang menyatakan

Aliffathur Risqi Hidayat

iii
KATA PENGANTAR

Puji syukur pada kehadirat Allah SWT, karena dengan limpahan rahmat-
Nya penulis dapat menyelesaikan Tugas Akhir dengan judul Racang Bangun
Sistem Informasi Forum Diskusi Game Online Berbasis Web dan Mobile tepat
waktu.
Penyusunan Tugas Akhir diajukan sebagai salah satu syarat untuk
memperoleh gelar sarjana pada Program Studi Informatika Fakultas Sains &
Teknologi Universitas Teknologi Yogyakarta.
Tugas Akhir ini dapat diselesaikan tidak lepas dari segala bantuan,
bimbingan, dorongan dan doa dari berbagai pihak, yang pada kesempatan ini
penulis ingin menyampaikan ucapan terima kasih kepada:
a. Dr. Bambang Moertono Setiawan, M.M., C.A., Akt. selaku Rektor
Universitas Teknologi Yogyakarta.
b. Dr. Endy Marlina, MT. selaku Dekan Fakultas Sains & Teknologi,
Universitas Teknologi Yogyakarta.
c. Dr. Enny Itje Sela, S.Si., M. Kom. selaku Ketua Program Studi
Informatika, Universitas Teknologi Yogyakarta.
d. Saucha Diwandari, S.Kom., M. Eng. Selaku pembimbing yang telah
memberikan bimbingan dan arahan dalam menyelesaikan Tugas Akhir ini.
e. Seluruh dosen Fakultas Sains & Teknologi yang telah memberikan banyak
ilmu yang berguna.
f. Kedua Orang Tua, yang selalu memberikan doa, semangat dan dukungan
moral maupun finansial dalam pelaksanaan tugas akhir ini.
g. Kekasih Saya yang tercinta Khoirun Nisa yang telah menemani,
memberikan semangat dan dukungan selama ini.
h. Saudara serta teman-teman Saya yang selalu ada ketika dibutuhkan dan
mau membantu meringankan beban selama masa kuliah.
i. Bapak Yudi Sakuri & Ibu Siti Fathonah selaku pemilik kos yang telah
memberikan tempat tinggal yang nyaman selama kuliah.
j. Seluruh warga Trini yang menerima Saya di lingkungan dan memberikan
iv
k. rasa nyaman dan aman selama tinggal di Yogyakarta.
l. Mak’e selaku pemilik warung yang sering memberikan makanan tambahan
secara gratis kepada Saya dan sering membantu selama kesusahan.
Akhir kata, penulis menyadari banyak kekurangan dalam penulisan laporan
ini, dan mengharapkan kritik dan saran untuk penelitian ke depannya.

Yogyakarta, 11 Juni 2022

Aliffathur Risqi Hidayat

K
h
o
i
r

v
ABSTRAK

Game Online merupakan suatu permainan yang sangat digemari semua kalangan
saat ini. Tak hanya berfungsi sebagai bahan hiburan game online dapat dijadikan
sarana mencari teman ataupun relasi, terkadang beberapa orang biasa berkenalan
dari dalam permainan. Akan tetapi fitur-fitur didalam game online itu sendiri
memiliki keterbatasan sehingga pengguna tidak dapat berinteraksi secara lebih
bebas. Pengguna terkadang kesulitan untuk menyampaikan suatu informasi,
berpendapat maupun saling berinteraksi di dalam game online karena keterbatasan
yang ada pada aplikasi. Dalam penelitian ini dibangun sistem informasi forum
diskusi berbasis web dan mobile untuk memepermudah pengguna berinteraksi satu
sama lain. Dengan adanya teknologi mobile diharapkan memberi kemudahan bagi
pengguna menggunakan sistem karena lebih mudah dan dapat dilakukan setiap saat.
Penelitian ini berhasil membangun forum diskusi game online berbasis web dan
mobile yang dapat digunakan pengguna untuk menyampaikan segala informasi,
berpendapat dan saling berinteraksi dengan memberikan komentar maupun
memberikan like pada diskusi yang dilakukan. Hasil penelitian ini didapati bahwa
dengan dibangun sistem informasi forum diskusi berbasis web dan mobile dapat
menjadikan sistem sebagai wadah diskusi yang dapat diakses oleh komunitas game
online yang mudah diakses menggunakan perangkat mobile.

Kata Kunci: Forum Diskusi, Website, Mobile.

vi
ABSTRACT
Online games are a game that is very popular with all circles today. Not only serves
as an entertainment material, online games can be used as a means to find friends
or relations, sometimes some people get acquainted with the game. However, the
features in the online game itself have limitations so that users cannot interact more
freely. Users sometimes find it difficult to convey information, argue or interact in
online games because of the limitations in the application. In this study, a web- and
mobile-based discussion forum information system was built to make it easier for
users to interact with each other. With the mobile technology is expected to provide
convenience for users in using the system because it is easier and can be done at
any time. This research succeeded in building a web- and mobile-based online
game discussion forum that can be used by users to convey all information, opinions
and interact with each other by providing comments or giving as in the discussions
carried out. The results of this study found that the construction of a web and
mobile-based discussion forum information system can make the system a forum
for discussion that can be accessed by the online gaming community that is easily
accessible using mobile devices.

Keyword: Discussion forum, Website, Mobile.

vii
DAFTAR ISI

HALAMAN JUDUL .............................................................................................. i


HALAMAN PENGESAHAN ............................................................................... ii
LEMBAR PERNYATAAN ................................................................................. iii
KATA PENGANTAR .......................................................................................... iv
ABSTRAK ............................................................................................................ vi
ABSTRACT .......................................................................................................... vii
DAFTAR ISI ....................................................................................................... viii
DAFTAR GAMBAR ............................................................................................. x
DAFTAR TABEL ................................................................................................ xi
BAB I PENDAHULUAN ...................................................................................... 1
Latar belakang ................................................................................................... 1
Rumusan Masalah ............................................................................................. 2
Batasan Masalah................................................................................................ 2
Tujuan Penelitian .............................................................................................. 2
Manfaat Penelitian ............................................................................................ 3
Sistematika Penulisan ....................................................................................... 3
BAB II KAJIAN HASIL PENELITIAN DAN LANDASAN TEORI .............. 5
Kajian Hasil Teori ............................................................................................. 5
Landasan Teori ................................................................................................ 10
2.2.1 Forum Diskusi ....................................................................................... 10
2.2.2 Website ................................................................................................. 11
2.2.3 HTML (Hypertext Markup Language) ................................................. 11
2.2.4 PHP (Hypertext Preprocessor) .............................................................. 12
2.2.5 MySQL ................................................................................................. 13
2.2.6 Aplikasi Mobile ..................................................................................... 14
2.2.7 Flowchart .............................................................................................. 14
2.2.8 Data Flow Diagram .............................................................................. 15
BAB III METODE PENELITIAN .................................................................... 18
Bahan/Data ...................................................................................................... 18
3.1.1 Data Yang Diperoleh ............................................................................ 18
3.1.2 Prosedur Pengumupulan Data ............................................................... 19
Aturan Bisnis ................................................................................................... 21
3.2.1 Analisis Sistem Saat Ini ........................................................................ 21
3.2.2 Kelemahan Sistem Saat Ini ................................................................... 22
Tahapan Penelitian .......................................................................................... 22
Rancangan Penelitian ...................................................................................... 24
BAB IV ANALISIS DAN DESAIN SISTEM ................................................... 26
Analisis Sistem Yang Diusulkan..................................................................... 26
4.1.1 Analisis Fungsional ............................................................................... 26
4.1.2 Analisis Non Fungsional ....................................................................... 27
4.1.2.1 Perangkat Keras (Hardware) Yang Digunakan .................................. 27
4.1.2.2 Perangkat Lunak (Software) Yang Digunakan .................................. 27

viii
4.1.3 Arsitektur Sistem .................................................................................. 28
4.1.4 Sistem Yang Diusulkan......................................................................... 29
Desain Sistem .................................................................................................. 29
4.2.1 Desain Logik ......................................................................................... 29
4.2.1.1 Diagram Konteks ............................................................................... 29
4.2.1.2 Diagram Jenjang ................................................................................ 30
4.2.1.3 Data Flow Diagram Level 1 ............................................................... 30
4.2.1.4 Data Flow Diagram Level 2 ............................................................... 32
4.2.1.5 Flowchart Sistem ............................................................................... 33
4.2.1.6 Entity Relationship Diagram .............................................................. 33
4.2.1.7 Relasi Tabel ....................................................................................... 34
4.2.1.9 Struktur Tabel .................................................................................... 35
4.2.2 Desain Antarmuka ................................................................................ 39
BAB V IMPLEMENTASI HASIL SERTA PEMBAHASAN ......................... 43
Implementasi ................................................................................................... 43
5.1.1 Implementasi Mobile App .................................................................... 43
5.1.2 Implementasi Api .................................................................................. 47
Hasil ................................................................................................................ 49
5.2.1 Hasil Website Admin ............................................................................ 49
5.2.2 Hasil Mobile App .................................................................................. 51
Pembahasan ..................................................................................................... 54
5.3.1 Pengujian Login .................................................................................... 54
5.3.2 Pengujian Halaman Utama ................................................................... 55
5.3.3 Pengujian Halaman Profile ................................................................... 56
5.3.4 Pengujian Halaman Admin ................................................................... 56
5.3.5 Pengujian Halaman Kategori ................................................................ 57
5.3.6 Pengujian Halaman User....................................................................... 57
5.3.7 Pengujian Halaman Laporan ................................................................. 58
BAB VI PENUTUP ............................................................................................. 60
Kesimpulan ..................................................................................................... 60
Saran ................................................................................................................ 60
DAFTAR PUSTAKA .......................................................................................... 61
LAMPIRAN ......................................................................................................... 63

ix
DAFTAR GAMBAR

Gambar 2.1 Komponen Flowchart ....................................................................... 15


Gambar 3.1 Screenshot Halaman Grup Facebook ................................................ 20
Gambar 3.2 Screenshoot Halaman Topik ............................................................. 20
Gambar 3.3 Screenshoot Tagar Ask...................................................................... 20
Gambar 3.4 Halaman Topik Ask .......................................................................... 21
Gambar 3.5 Flowchart Sistem Saat Ini ................................................................. 21
Gambar 3.6 Diagram Tahapan Penelitian ............................................................. 22
Gambar 3.7 Rancangan Penelitian ........................................................................ 24
Gambar 4.1 Arsitektur Sistem ............................................................................... 28
Gambar 4.2 Pemodelan Sistem ............................................................................. 28
Gambar 4.3 Sistem Yang Diusulkan ..................................................................... 29
Gambar 4.4 Diagram Konteks............................................................................... 30
Gambar 4.5 Diagram Jenjang ................................................................................ 30
Gambar 4.6 DFD Level 1 ...................................................................................... 31
Gambar 4.7 DFD Level 2 ...................................................................................... 32
Gambar 4.8 Flowchart Diskusi ............................................................................ 33
Gambar 4.9 Entity Relationship Diagram............................................................. 34
Gambar 4.10 Relasi Tabel ..................................................................................... 35
Gambar 4.11 Desain Halaman Daftar ................................................................... 39
Gambar 4.12 Desain Halaman login ..................................................................... 40
Gambar 4.13 Desain Halaman Home User Versi Web ......................................... 40
Gambar 4.14 Desain Halaman Home User Versi Mobile ..................................... 41
Gambar 4.15 Desain Halaman Profile Versi Web ................................................ 41
Gambar 4.16 Desain Halaman Profile Versi Mobile ............................................ 42
Gambar 5.1 Halaman Login .................................................................................. 50
Gambar 5.2 Halaman Dashboard .......................................................................... 50
Gambar 5.3 Halaman Data User ........................................................................... 51
Gambar 5.4 Halaman Data Kategori ..................................................................... 51
Gambar 5.5 Halaman Login Mobile ...................................................................... 52
Gambar 5.6 Halaman Daftar Mobile ..................................................................... 52
Gambar 5.7 Halaman Dashboard Mobile .............................................................. 53
Gambar 5.8 Halaman Profile Mobile .................................................................... 53
Gambar 5.9 Bilah Notifikasi Mobile ..................................................................... 54

x
DAFTAR TABEL

Tabel 2.1 Perbandingan Kajian Hasil Penelitian .................................................... 7


Tabel 2.2 Komponen Data Flow Diagram ........................................................... 16
Tabel 3.1 Sampel Data Mentah ............................................................................. 18
Tabel 4.1 Tabel Account ....................................................................................... 35
Tabel 4.2 Tabel Post.............................................................................................. 36
Tabel 4.3 Tabel Komentar..................................................................................... 36
Tabel 4.4 Tabel Kategori....................................................................................... 37
Tabel 4.5 Tabel like-unlike ................................................................................... 37
Tabel 4.6 Tabel Notifikasi .................................................................................... 37
Tabel 4.7 Tabel Laporan ....................................................................................... 38
Tabel 4.8 Tabel Dilihat ......................................................................................... 38
Tabel 5.1 Script Koneksi Api ................................................................................ 43
Tabel 5.2 Script Proses Login ............................................................................... 44
Tabel 5.3 Script Proses Daftar .............................................................................. 45
Tabel 5.4 Script Membuat Diskusi........................................................................ 46
Tabel 5.5 Script Membuat Komentar .................................................................... 46
Tabel 5.6 Script Memberikan Like ........................................................................ 47
Tabel 5.7 Script Membuat Laporan ...................................................................... 47
Tabel 5.8 Script Api Data User ............................................................................. 47
Tabel 5.9 Script Api Daftar ................................................................................... 48
Tabel 5.10 Hasil Pengujian Login ......................................................................... 54
Tabel 5.11 Hasil Pengujian Halaman Utama ........................................................ 55
Tabel 5.12 Hasil Pengujian Halaman Profile ........................................................ 56
Tabel 5.13 Hasil Pengujian Halaman Admin ........................................................ 56
Tabel 5.14 Hasil Pengujian Halaman Kategori ..................................................... 57
Tabel 5.15 Hasil Pengujian Halaman User ........................................................... 58
Tabel 5.16 Hasil Pengujian Halaman Laporan ..................................................... 58

xi
BAB I
PENDAHULUAN

Latar belakang
Game online merupakan salah satu bukti perkembangan teknologi yang
sangat pesat di era globalisasi saat ini. Game online sangat popular di kalangan
anak-anak hingga usia remaja, hampir semua anak-anak dan remaja pernah
mengakses game online. Saat ini game online sudah menjadi ladang bisnis dan
industri yang biasa dikenal dengan Esports, bahkan beberapa waktu lalu pemerintah
secara resmi menyatakan bahwa Esports merupakan salah satu cabang olahraga
yang dapat dipertandingkan skala nasional maupun internasional.
Di Indonesia terdapat beberapa game online yang memiliki banyak peminat
dari berbagai kalangan, salah satunya adalah Mobile Legends. Mobile Legends
adalah satu game online yang berhasil membangkitkan industri esports di Indonesia
sampai saat ini. Sejak kehadirannya di tahun 2016 Mobile Legends berhasil
meningkatkan jumlah pemain game online di Indonesia, Saat ini Mobile Legends
menjadi game kedua yang paling banyak di download di Indonesia setelah Free
Fire.
Pecinta game Mobile Legends telah tumbuh menjadi berbagai macam
komunitas game dengan tujuan yang beragam. Beberapa dari komunitas tersebut
telah aktif mengikuti kompetisi kecil hingga besar berskala nasional. Kompetisi-
kompetisi ini diadakan oleh komunitas itu sendiri sampai perusahaan tertentu yang
menarik minat dalam industri Esports di Indonesia. Beberapa kompetisi bahkan di
dukung secara langsung lewat program pemerintah mulai dari dana sampai promosi
media, perkembangan game online dan kompetisi-kompetisinya tidak akan pernah
berhenti dan akan selalu mengikuti perkembangan teknologi.
Sayangnya platform yang mewadahi komunitas-komunitas game online ini
dan kompetisi yang mereka selenggarakan bisa dibilang cukup sedikit. Forum
diskusi komunitas game online kebanyakan dilakukan menggunakan media sosial

1
2

yang cenderung terbatas mulai dari fitur sampai dengan akses masuknya, sehingga
tidak semua orang dapat mengakses diskusi yang sedang dilakukan di dalamnya.
Sistem informasi forum diskusi game online berbasis web dan mobile perlu
dikembangkan secara luas demi meningkatkan perkembangan game online di
Indonesia. Dengan adanya sistem ini akan memudahkan para komunitas game
online terutama penggiat Mobile Legends dalam mengambangkan komunitas
mereka.
Rumusan Masalah
Berdasarkan latar belakang yang telah diuraikan di atas, maka rumusan
masalah yang didapatkan adalah sebagai berikut :
a. Apakah merancang dan membangun sistem informasi forum diskusi online dapat
digunakan sebagai wadah diskusi oleh komunitas game Mobile Legends ?
b. Apakah membangun sistem informasi forum diskusi berbasis mobile
mempermudah akses pengguna kedalam sistem?
Batasan Masalah
Pada penelitian ini diperlukan berbagai batasan untuk membatasi objek atau
ruang lingkup di dalam penelitian, batasan masalah pada penelitian ini dijelaskan
sebagai berikut :
a. Sistem yang dikembangan berbasis web dan mobile, demi memudahkan akses
dari berbagai macam pengguna.
b. Pengguna dapat membuat diskusi, memberikan komentar, memberikan like dan
memberikan laporan terhadap suatu diskusi, koementar maupun akun.
Tujuan Penelitian
Penelitian ini memiliki beberapa tujuan yang diuraikan secara singkat
sebagai berikut :
a. Membangun suatu website forum diskusi online yang nyaman digunakan oleh
para komunitas game Mobile Legends.
b. Menjadikan website sebagai media penyaluran informasi tentang Mobile
Legends demi meningkatkan antusiasme pecinta game Mobile Legends.
3

Manfaat Penelitian
Penelitian ini memberi beberapa manfaat yang diuraikan secara singkat
sebagai berikut :
a. Mempermudah media diskusi dan komunikasi antar sesama pecinta game
Mobile Legends.
b. Mempermudah kalangan pecinta Mobile Legends mencari informasi mengenai
update terbaru untuk mengasah kemampuan dan meningkatkan pengalaman.
Sistematika Penulisan
Adapun sistematika penulisan proposal tugas akhir ini disusun dalam
beberapa bab, yang dijelaskan sebagai berikut :

BAB I PENDAHULUAN
Bab ini berisikan latar belakang masalah, rumusan masalah,
batasan masalah, tujuan dan manfaat penelitian yang menjadi
pendahuluan dari penelitian dan dijadikan dasar dalam pengerjaan
tugas akhir yang berjudul Rancang Bangun Sistem Informasi
Forum Diskusi Game Online Berbasis Web Dan Mobile.

BAB II KAJIAN HASIL PENELITIAN DAN LANDASAN TEORI


Bab ini berisikan kajian hasil penelitian terdahulu yang digunakan
sebagai referensi dan pembanding dalam pembuatan Sistem
Informasi Forum Diskusi Game Online Berbasis Web Dan
Mobile. Dalam bab ini terdapat sub bab yang terdiri dari
penelitian mengenai forum diskusi dan landasan teori yang
mendukung penelitian mengenai Rancang Bangun Sistem
Informasi Forum Diskusi Game Online Berbasis Web Dan
Mobile.

BAB III METODE PENELITIAN


Bab ini menguraikan langkah pembuatan sistem yang dilakukan
dalam penelitian yang antara lain meliputi bahan atau data yang
4

diperoleh dari lapangan, aturan bisnis dan tahapan penelitian


mengenai Rancang Bangun Sistem Informasi Forum Diskusi
Game Online Berbasis Web Dan Mobile.

BAB IV ANALISIS DAN DESAIN SISTEM


Bab ini berisi analisis sistem yang akan diusulkan yang terdiri dari
analisis fungsional dan non-fungsional, desain sistem yang terdiri
dari desain logik dan desain fisik dari penelitian Rancang Bangun
Sistem Informasi Forum Diskusi Game Online Berbasis Web Dan
Mobile.

BAB V IMPLEMENTASI DAN HASIL


Bab ini berisi tentang rangkuman dari keseluruhan penelitian
mengenai Rancang Bangun Sistem Informasi Forum Diskusi
Game Online Berbasis Web Dan Mobile dibuat kesimpulan untuk
mendapatkan hasil jawaban dari masalah apakah mencapai tujuan
atau tidak.

BAB VI PENUTUP
Bab ini berisi tentang kesimpulan sementara yang dapat diambil
dari isi metode penelitian dan rancangan sistem.
BAB II
KAJIAN HASIL PENELITIAN DAN LANDASAN TEORI

Kajian Hasil Teori


Penelitian oleh (Rahardianti, E. C. dkk., 2020). Yang berjudul Rancang
Bangun Website Forum Komunitas Pecinta Film Drama Korea. Penelitian bertujuan
untuk membangun forum diskusi online berbasis web yang dapat digunakan
sebagai media diskusi oleh komunitas pecinta drama koea. Hasil penelitian ini
berhasil menghasilkan sebuah website forum diskusi online yang berguna dalam
mencari dan berbagi informasi mengenai drama korea.
Penelitian oleh (Sipa Almasik, dkk., 2021) . Dengan judul Rancang Bangun
Aplikasi Forum Diskusi Usaha Mikro Kecil dan Menengah Berbasis Web.
Penelitian ini bertujuan untuk membangun website forum diskusi online bagi
penggiat UMKM di Kabupaten Garut yang fokus membahas mengenai
perkembangan UMKM dan pasar di wilayah tersebut. Hasil dari penelitian ini
menghasilkan forum diskusi online berbasis web yang dapat digunakan sebagai
media menyebarkan informasi dan diskusi para penggiat UMKM di Kabupaten
Garut.
Penelitian oleh (Munazilin, A. and Santoso, F., 2020). Yang berjudul
Analisis Dan Perancangan Forum Komunikasi Mahasiswa Pascasarjana
Universitas Ibrahimy Berbasis Website. Penelitian ini dilakukan untuk merancang
dan membangun forum diskusi berbasis website yang digunakan oleh para
mahasiswa pascasarjana. Aplikasi yang dirancang berfokus dalam penyampaian
informasi dan berita dalam lingkup program pascasarjana Universitas Ibrahimy.
Hasil dari penelitian berhasil membangun forum komunikasi berbasis web dengan
memanfaatkan bahasa pemrograman PHP, HTML dan basis data MySql.
Penelitian oleh (Supriyatna, A. dan Nugroho, M. A. S., 2018). Yang
Berjudul Sistem Informasi Forum Diskusi Programmer Berbasis Web
Menggunakan Rapid Application Development. Penelitian ini berisi mengenai
pembangunan sistem informasi forum diskusi berbasis web yang membahas khusus
mengenai bidang Programmer dan Teknologi Informasi. Penelitian ini berhasil

5
6

membangun Sistem Informasi Berbasis Web yang dapat digunakan sebagai media
diskusi sesama komunitas programmer dan teknologi.
Penelitian oleh (Gardenia, Y. and Hardaya, A., 2021). Dengan judul
Perancangan Forum Diskusi Universitas Suryadarma Berbasis Website Dan
Aplikasi Android. Penelitian ini bertujuan merancang dan membangun forum
diskusi online mahasiswa Universitas Suryadarma, sistem yang dibangun
memanfaatkan framework Laravel dalam pembuatannya. Hasil dari penelitian ini
berhasil membangun forum diskusi online berbasis web dan aplikasi android
dengan memanfaatkan komponen webview.
Penelitian oleh (Wahyu, A. P. and Hidayat, T., 2022). Yang berjudul Sistem
Informasi Jejaring Sosial Dan Forum Diskusi Berbasis PHP. Penelitian ini
bertujuan untuk merancang sistem informasi jejaring sosial dan forum diskusi
berbasis website. Sistem yang dirancang menggunakan Bahasa pemrograman PHP
dan menggunakan Bahasa pemrograman MySql. Hasil dari penelitian ini berupa
rancangan sistem yang dapat digunakan sebagai acuan pengembangan sistem
secara berkelanjutan.
Penelitian oleh (Fahmi, M. N. dkk., 2018). Dengan judul Sistem Informasi
Forum Diskusi untuk Penanganan Kerugian Pascapanen Berbasis Web. Penelitian
bertujuan membangun sistem informasi forum diskusi online berbasis web yang
digunakan sebagai media berbagi dan penyebar informasi mengenai penangan
pascapanen untuk mengurangi kerugian para petani. Hasil dari penelitian ini
berhasil membangun sistem informasi forum diskusi online berbasis web yang
nyaman digunakan oleh user serta sebagai media penyalur informasi antara para
petani untuk menangani kerugian pascapanen.
Penelitian oleh (Gustian, H. et al., 2019). Dengan judul Sistem Informasi
Forum Diskusi Layanan Mandiri Online Warga RW 09 Kelurahan Karadenan
Kecamatan Cibinong Kabupaten Bogor. Penelitian ini bertujuan membangun
sistem informasi layanan mandiri warga yang digunakan sebagai media
menyalurkan informasi, bantuan dan pelayanan jasa. Hasil dari penelitian ini
berhasil membangun forum diskusi online berbasis website yang mampu menjadi
7

media penyaluran informasi, bantuan dan pelayanan jasa bagi warga RW 09


Kelurahan Karadenan Kecamatan Cibinong Kabupaten Bogor.
Penelitian oleh (Wahyuningrum, R. and Rayvin Augusta, 2017). Dengan
judul Sistem Forum Diskusi Online Warga RW 02 Kelurahan Jati Kecamatan
Pulogadung Jakarta Timur. Penelitian ini bertujuan untuk membangun forum
diskusi online berbasis web yang digunakan sebagai media diskusi online oleh
warga Kelurahan Jati, Kecamaran Pulogadung. Hasil dari penelitian ini
menghasilkan sebuah forum diskusi online berbasis web yang dapat diakses
menggunakan akun tertentu serta dapat dikontrol oleh admin guna menghindari
adanya kesalahan sistem.
Penelitian oleh (Satria, F. et al., 2020). Yang berjudul Aplikasi Forum
Diskusi Himpunan Mahasiswa Teknik Universitas Jenderal Soedirman
Menggunakan Laravel. Penelitian ini bertujuan untuk membangun aplikasi forum
diskusi online berbasis website yang berguna sebagai media diskusi dan penyaluran
informasi mahasiswa fakultas teknik. Hasil dari penelitian ini berhasil membangun
aplikasi forum diskusi online berbasis website dengan menggunakan framework
Laravel. Aplikasi yang dibangun berhasil menjadi media diskusi dan penyampaian
informasi dengan baik.
Tabel 2.1 Perbandingan Kajian Hasil Penelitian
No Judul Penulis Metode Hasil/ Kesimpulan
1 Rancang Bangun Ester Cherin Blackbox Penelitian
Website Forum Rahardianti , Testing menghasilkan website
Komunitas Pecinta Kartika Imam forum diskusi online
Film Drama Korea Santoso , yang dibuat
Sugeng menggunakan
Wahyudiono Sublimetext,
XAMPP, bahasa
pemrograman PHP
dan database mySQL.
Di dalam website
terdapat beberapa
fitur tambahan seperti
report, login dan
filtering.
2 Rancang Bangun Sipa Almasik, Rational Penelitian ini
Aplikasi Forum Aldy Rialdy Unified menghasilkan sebuah
8

No Judul Penulis Metode Hasil/ Kesimpulan


Diskusi Usaha Atmadja, Yeni Proccess website forum diskusi
Mikro Kecil dan Pariyatin (RUP), UMKM yang
Menengah Blackbox memiliki fitur
Berbasis Web Testing Repository yang dapat
digunakan sebagai
pengetahuan UMKM
serta fitur topik yang
dapat digunakan
pemerintah dan
UMKM untuk
melakukan diskusi.
3 Analisis Dan Akhlis Waterfall, Penelitian
Perancangan Munazilin, Website menghasilkan forum
Forum Firman komunikasi berbasis
Komunikasi Santoso website. Hasil
Mahasiswa penelitian ini
Pascasarjana mempermudah
Universitas penyampaian
Ibrahimy Berbasis informasi dan berita
Website dalam ruang lingkup
program pascasarjana
di Universitas
Ibrahimy
4 Sistem Informasi Adi Rapid Penelitian ini
Forum Diskusi Supriyatna, Applicatio menghasilkan forum
Programmer Mas Aji Sapto n diskusi berbasis web
Berbasis Web Nugroho Developm yang dapat
Menggunakan ent (RAD) mempermudah
Rapid Application pencarian source code
Development ketika programmer
kesulitan dalam suatu
pengembangan
aplikasi. Website ini
dapat sebagai media
berbagi ilmu
pengetahuan seputar
programming dan
saling berdiskusi
memecahkan suatu
kasus.
5 Perancangan Yulisa Website Penelitian ini berhasil
Forum Diskusi Gardenia, dan membangun forum
Universitas Aziz Hardaya Mobileapp diskusi mahasiswa
Suryadarma berbasis website yang
Berbasis Website dapat dijalankan pada
9

No Judul Penulis Metode Hasil/ Kesimpulan


Dan Aplikasi mobileapp dengan
Android menggunakan
komponen webview
untuk menampilkan
halaman website
kedalam aplikasi
android.
6 Sistem Informasi Taufik Website, Hasil penelitian ini
Jejaring Sosial Hidayat, Ari Video berupa rancangan
Dan Forum Purno Wahyu Flash sistem mentah yang
Diskusi Berbasis Wibowo Player dapat digunakan
PHP Program sebagai acuan
perancangan dan
pengembangan sistem
secara berkelanjutan.
7 Sistem Informasi M. Naufal Waterfall, Penelitian ini
Forum Diskusi Fahmi , Black Box menghasilkan sebuah
untuk Penanganan Safaruddin Testing website forum diskusi
Kerugian Hidayat Al online yang berguna
Pascapanen Ikhsan , Fitrah sebagai sarana diskusi
Berbasis Web Satrya Fajar dan pengumpulan
Kusumah informasi yang
dibutuhkan oleh
berbagai pihak
mengenai susut
pascapanen. Website
memiliki tingkat
keamanan yang baik
dengan adanya
mekanisme email
corporate.
8 Sistem Informasi Harry Gustian, Website Penelitian ini
Forum Diskusi Jejen menghasilkan Sistem
Layanan Mandiri Jaenudin, Informasi forum
Online Warga RW Puspa Eosina diskusi layanan
09 Kelurahan mandiri yang
Karadenan mempermudah warga
Kecamatan dalam menyalurkan
Cibinong informasi, meminta
Kabupaten Bogor bantuan dan
pelayanan jasa serta
meningkatkan peran
aktif warga untuk
berdiskusi dalam
meningkatkan
10

No Judul Penulis Metode Hasil/ Kesimpulan


infrastruktur yang ada
di desa.
9 Sistem Forum Ratih Rapid Penelitian
Diskusi Online Wahyuningru Applicatio menghasilkan forum
Warga RW 02 m, Rayvin n diskusi online yang
Kelurahan Jati Augusta Developm dapat mempermudah
Kecamatan ent (RAD) diskusi dan
Pulogadung menyampaikan
Jakarta Timur informasi antar warga
desa.
10 Aplikasi Forum Fisal Satria Blackbox Penelitian ini
Diskusi Himpunan Nur Testing, menghasilkan aplikasi
Mahasiswa Teknik Ramadhan, Website forum diskusi online
Universitas Nur Chasanah, berbasis website
Jenderal Dadang dengan
Soedirman Iskandar memanfaatkan
Menggunakan framework Laravel.
Laravel Hasil pengujian dari
aplikasi menunjukkan
bahwa forum diskusi
yang dibangun dapat
mempermudah
diskusi dan
penyaluran informasi
antar mahasiswa.

Terlihat pada tabel 2.1 perbedaan dari referensi dengan judul yang ditulis
terletak pada fokus forum diskusi yang mengusung tema game online, Penelitian
ini juga memiliki fitur yang lebih lengkap dimana terdapat fitur membuat komentar,
memberikan like dan membuat laporan.
Landasan Teori
2.2.1 Forum Diskusi
Menurut (Fitriani, Y. dkk., 2020) forum merupakan suatu wadah atau sarana
berkomunikasi antara beberapa kelompok orang yang setiap anggotanya dapat
berperan aktif di dalamnya. Dalam suatu forum semua anggota memiliki hak yang
sama, semua anggota memiliki hak untuk mengungkapkan suatu pendapat sesuai
pemikirannya masing-masing.
11

Menurut (Sudarma, M., 2021) diskusi atau dialog adalah teknik dalam
mengkondisikan seseorang untuk bisa belajar. Mirip dengan menulis, diskusi
adalah cara kira menguatkan pemahaman, dan menajamkan sikap kritis kita
terhadap pandangan, teori atau opini orang lain.
Kesimpulannya forum diskusi adalah sarana berkomunikasi dua orang atau
kelompok dimana setiap anggota dapat saling berinteraksi untuk berbagi, bertukar
pikiran dan berpendapat untuk mendapatkan sebuah kesepakatan bersama.
2.2.2 Website
Menurut (Musnaini and Wijoyo, H., 2021) Definisi website adalah fasilitas
internat yang menghubungkan dokumen dalam lingkup local maupun jarak jauh,
dokumen-dokumen multimedia (teks, gambar, animasi, video). Dokumen pada
website disebut dengan web page dan link dalam website memungkinkan pengguna
bisa berpindah dari satu page ke page lain (hypertext), text, gambar, video, audio
dan animasi lainnya yang disediakan melalui jalur koneksi internet.
Web merupakan perangkat lunak yang saat ini banyak digunakan untuk
memenuhi kebutuhan sehari-hari. Berbagai jenis usaha atau bisnis memanfaatkan
situs ini untuk menghasilkan keuntungan. Secara umum, pengguna akan
mengakses suatu website berupa URL melalui Web Browser. Kemudian Web
Browser tersebut mengirimkan permintaan HTTP request kepada Web Server
melalui TCP/IP, sehingga Web Server akan memberikan Web Files yang diminta.
Website merupakan sebuah media yang memiliki banyak halaman yang
saling terhubung (hyperlink), dimana website memiliki fungsi dalam memberikan
informasi berupa teks, gambar, video, suara dan animasi atau penggabungan dari
semuanya. (Elgamar, 2020)
2.2.3 HTML (Hypertext Markup Language)
HTML (Hypertext Markup Language) adalah bahasa yang digunakan untuk
membuat antarmuka halaman web. Aplikasi web mengabungkan antarmuka yang
dibuat dengan HTML dengan bahasa pemrograman yang berfungsi sebagai logika
dan mengelola data. Oleh karena itu pengetahuan tentang HTML sangat penting
dalam pembangunan aplikasi web. (Faisal, M. R. and Abadi, F., 2020)
12

HTML dibuat oleh Tim Berners-Lee diakhir tahun 1991 tetapi belum secara
resmi- Kemudian tahun 1995 dirilis I Il ML 2.0 Sedangkan versi utama dirilis pada
tahun 1999.
1. HTML 1.0
Versi ini dirilis tahun 1993 dengan tuiuan berbagi informasi yang dapat
dibaca dan diakses melalui web browser. Tetapi karena belum banyak
developer yang membuat website maka bahasa ini tidak berkembang.
2. HTML 2.0
Versi ini dirilis 1995. Versi ini berisi seluruh fitur pada versi 1.0 ditambah
tambahan fitur. Versi ini bertahan sampai tahun 1997.
3. HTML 3.0
Versi ini memiliki banyak penarnbahan fitur baru HTML dan memberikan
banyak kemudahan kepada web master untuk mendesain halaman web.
Tetapi fitur-fitur hebat dari HTML baru ini memperlambat web browser.
4. HTML 4.01
Versi ini banyak digunakan dan versi yang sukses sebelum HTML 5.0
dirilis. Versi 4.01 digunakan diseluruh dunia. Kemudian selanjutnya adalah
HTML 5.0 yang merupakan extended version dari HTML 4.01.
2.2.4 PHP (Hypertext Preprocessor)
Hypertext Preprocessor atau lebih akrab dengan sapaan PHP merupakan
bahasa pemrograman script server-side yang didesain untuk pengembangan
web. PHP disebut bahasa pemrograman server-side karena diproses pada
komputer server. Hal ini berbeda dengan bahasa pemrograman client-side seperti
Javascript yang diproses di dalam web browser.
Pada awalnya, PHP merupakan kependekan dari Personal Home Page. PHP
pertama kali dibuat oleh Rasmus Irrdorf pada tahun 1995. Pada waktu itu PHP
masih bernama Form Interpreted (FI) yang wujudnya berupa sekumpulan skrip dan
digunakan untuk mengolah data formulir dari web. Selanjutnya, Rasmus merilis
Source Code tersebut untuk umum dan menamakannya PHP/FI. Dengan perilisan
Source Code ini menjadi Open Source, banyak pemrograman yang tertarik untuk
ikut dalam pengembangan PHP.
13

Pada November 1997, dirilis PHP/FI 2.0 Saat itu, interpreter PHP sudah
diimplementasikan dalam program C. Dalam rilis ini disertakan juga moduLmodul
ekstensi yang bisa meningkatkan kemampuan PHP/FI secara signifikan.
Tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter
PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada bulan Juni
1998, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikannya
sebagai PHP 3.0 dan singkatan PHP pun diubah menjadi Hypertext Preprocessing.
Pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis
tersebut dikenal dengan sebutan PHP 4. pada tahun 2004, Zend kembali merilis
PHP dengan versi terbaru, yaitu PHP 5. Versi ini dimasukkan model pemrograman
berorientasi Objek ke dalamnya, sehingga mampu menjawab perkembangan bahasa
pemrograman ke arah paradigma berorientasi objek. Versi terbaru dan stabil dari
bahasa pemrograman PHP Saat ini adalah versi 7 yang dirilis pada tanggal 17
Februari 2017 kemarin. (Jannah, M. et al., 2019)
2.2.5 MySQL
Menurut (Jubilee Enterprise, 2018) MySQL adalah sistem database yang
paling popular. MySQL adalah database yang cukup terkenal karena hampir
sebagian besar aplikasi berbasis website seperti Wordpress, dilengkapi dengan
MySQL. Selain itu, MySQL juga ditawarkan dalam berbagai versi, termasuk versi
gratisan. Di dalam buku ini, MySQL yang digunakan adalah versi gratis.
MySQL adalah sebuah program database server yang mampu menerima dan
mengirimkan datanya sangat cepat, multi user serta menggunakan perintah dasar
SQL (Structured Query Language).
MySQL merupakan dua bentuk lisensi, yaitu Free Software dan Shareware.
MySQL yang biasa digunakan adalah MySQL FreeSoftware yang berada di bawah
lisensi GNU/GPL (General Public Licence).
MySQL merupakan sebuah database server yang free, artinya bebas
menggunakan database untuk keperluan pribadi atau usaha tanpa harus membeli
atau membayar lisensinya. MySQL pertana kali dirintis oleh sorang programmer
database bernama Michael Widenius. Selain database server, MySQL juga
merupakana program yang dapat mengakses suatu database MySQL yang berposisi
14

sebagai server, yang berarti program kita berposisi sebagai client. Jadi MySQL
adalah sebuah database yang dapat digunakan sebagai client maupun server.
Database MySQL merupakan suatu perangkat lunak database yang
berbentuk database relasional atau disebut Relational Database Management
System (RDBMS) yang menggunakan suatu Bahasa permintaan yang bernama SQL
(Structured Query Language). (Dr. Gede Indrawan, 2021)
2.2.6 Aplikasi Mobile
Menurut (Sari, V. N. and Anggraini, D., 2020) Aplikasi mobile adalah
aplikasi yang didesain khusus untuk perangkat smartphone dan tablet. Platform
aplikasi mobile terbagi menjadi 4 yaitu android, iOs, Windows 8 dan Windows
phone.
Menurut (Priowirjanto, D. E. S. et al., 2021) Aplikasi mobile merupakan
sebuah aplikasi yang dibuat untuk perangkat mobile yang penggunanya harus
melakukan pengunduhan atau download, serta menginstal dari toko aplikasi seperti
Google Play Store dan Apple App Store. Aplikasi mobile adalah aplikasi dari
sebuah perangkat lunak yang dalam pengoperasiannya dapat berjalan diperangkat
mobile (Smartphone, Tablet, iPod, dll), dan memiliki sistem operasi yang
mendukung perangkat lunak secara stand alone.
Keberadaan aplikasi mobile harus memenuhi beberapa hal, seperti aplikasi
mobile harus dapat meningkatkan kualitas hidup manusia, meningkatkan proses
bisnis yang sudah ada seperti dalam penggunaan aplikasi instant messaging, banyak
dari pekerja yang aktif menggunakan aplikasi instant messaging sebagai aplikasi
mobile untuk menunjang kebutuhan komunikasi dan aplikasi mobile harus dapat
meningkatkan customer satisfaction. Dengan memiliki customer satisfaction yang
baik akan meningkatkan suatu penjualan dari perusahaan.
2.2.7 Flowchart
Menurut (Wibawanto, W., 2017) Flowchart adalah suatu bagan dengan
symbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan
hubungan Antara suatu proses (intruksi) dengan prosess lainnya dalam suatu
program.
15

Flowchart adalah teknis analisis yang dipergunakan untuk mendeskripsikan


beberapa aspek dari sistem informasi secara jelas, ringkas dan logis. Flowchart
menggunakan seangakian symbol standar untuk mendeskripsikan melalui gambar
prosedur pemrosesan transaksi yang digunakan perusahaan dan arus data melalui
sistem. (Fauzi, R. A., 2017)
Manfaat flowchart adalah sebagai berikut:
Menjadi pedoman pembagian tugas dan koordinasi dalam organisasi
Menjaga arah pelaksanaan kerja agar tetap terfokus
Menghindari pekerjaan yang tidak perlu
Sebagai benchmark
Mempermudah identifikasi masalah
Menjadi pedoman pelatihan/training
Komponen-komponen flowchart dijelaskan pada Gambar 2.1 dibawah ini.

Gambar 2.1 Komponen Flowchart


2.2.8 Data Flow Diagram
Menurut (Kurniawan, T. A., 2020) Data Flow Diagram (DFD) adalah
diagram arus yang menggunakan symbol-simbol untuk menyajikan entitas, proses,
16

arus data dan penyimpanan yang berkaitan dengan suatu sistem dengan tujuan
untuk memberikan indikasi mengenai bagaimana data ditransformasi pada saat data
bergerak melalui sistem dan mengembalikan fungsi-fungsi (dan subfungsi) yang
mentransformasikan aliran data.
Berikut adalah manfaat dari DFD:
DFD adalah alat pembuatan model yang memungkinkan professional sistem
untuk menggambarkan sistem sebagai suatu jaringan proses fungsional
yang dihubungkan satu sama lain dengan alur data, baik secara manual
maupun secara komputerisasi.
Merupakan suatu alat pembuatan model yang sering digunakan, khususnya
bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan
kompleks dari pada data yang dimanipulasi oleh sistem. Dengan kata lain
DFD adalah alat pembuatan model yang memberikan penekanan hanya
pada fungsi sistem.
Merupakan alat perancangan sistem yang berorientasi pada alur data dengan
konsep dekomposisi dapat digunakan untuk penggambaran analisis
maupun rancangan sistem yang mudah dikomunikasikan oleh professional
sistem kepada pemakai maupun pembuat program.
Dibawah ini merupakan komponen-komponen didalam DFD yang dijelaskan pada
Tabel 2.2.
Tabel 2.2 Komponen Data Flow Diagram
Simbol Keterangan

Proses Menunjukan transformasi dari


masukan menjadi keluaran

Entitas Eksternal dimana entitas tersebut


berkomunikasi dengan sistem
17

Simbol Keterangan

Penyimpanan menunjukan penyimpanan


dalam sebuah database

Aliran menggambarkan aliran data yang


masuk ke proses atau keluaran dari suatu
proses
BAB III
METODE PENELITIAN

Bahan/Data
3.1.1 Data Yang Diperoleh
Data yang digunakan pada penelitian ini adalah data berupa postingan
dengan tagar atau hastag #ask yang berarti kategori bertanya pada salah satu grup
facebook forum diskusi game mobile legends bernama Gamers Mobile Legends.
Data yang dikumpulkan adalah postingan pertanyaan pada media social facebook.
Berikut adalah sampel yang diperoleh yang ditunjukan pada Tabel 3.1.
Tabel 3.1 Sampel Data Mentah
No Nama Akun Postingan Tanggal Upload
1 Istrinya Ryuzaki Ini kenapa gabisa masuk y, pdhl tu 12 Maret 2021
email udh terhubung d akun
moonton.
2 I M Fuad Event top up sekalinya di reset nggak 28 Januari 2021
guys?
3 Ryan Pliss bantu jawab, item mega 3 Mei 2021
diamond ini buat apasih? Kemaren
beli di shop katanya bisa dapet
diamond, tapi sampe sekarang gw ga
dapet diamond, penipuan kah?
4 Aditya Numpang nanya gan ini kenapa error 15 Mei 2021
ya padahal penyimpanan saya masih
ada 10gb lagi
5 Chyrsalism ada yang tau ga, gua ga login sama 20 Januari 2021
sekali terus tiba tiba ada history
permainan afk?
6 Jiee Jadi gini bang gw mau nanya akun 28 Januari 2021
gw kenapa ya kaya gini? Setiap maen
Rank/klasik pasti kaya gtuu terus tim
gw kaya bot masuk ke turet sndri itu
18
19

No Nama Akun Postingan Tanggal Upload


kenapa ya?, Udah Mabar Ama temen
kata temen gw diem aja malah ulti ke
tembok
7 Rival Store Saya baru claim skin selena 24 Mei 2021
Ini drawnya kok gak kembali ke 1
lagi ya?
Atau emang habis ini bisa dapat
zodiac lagi?

8 Ali Arifin Cara Dptin nih Border gimana? 23 Februari


2021
9 Agung R Mau tanya misal kalo pake diggie 31 Maret 2021
feed ya terus mati 10 secara berkala
musuhnya kalo kill lagi kan gk dapet
gold....nah tapi kalo diggie nya mati
di tower 10x terus ke 11nya di kill
musuh apakah masih dapet gold
musuhnya?
10 Sugiono Ada yg punya solusinya kah? Dari 6 Desember
kemarin mau top up in game gabisa
2020

3.1.2 Prosedur Pengumpulan Data


Proses pengumpulan data adalah proses yang dilakukan dengan
mengumpulkan data sebagai data latih dan data uji. Pada penelitian ini penulis
mengumpulkan data yang bersumber dari grup facebook. Berikut langkah
pengumpulan data :
Buka tautan https://web.facebook.com/groups/703125370554926 pada browser
untuk membuka grup facebook yang bernama Gamers Mobile Legends seperti
Gambar 3.1 dibawah ini.
20

Gambar 3.1 Screenshot Halaman Grup Facebook


Masuk ke menu topik untuk menemukan penyaringan topik diskusi.

Gambar 3.2 Screenshoot Halaman Topik


Pilih topik diskusi dengan tagar #ask. Maka akan menampilkan halaman tagar
#ask dan menampilkan postingan dengan tagar yang sama secara acak.

Gambar 3.3 Screenshoot Tagar Ask


21

Gambar 3.4 Halaman Topik Ask


Aturan Bisnis
3.2.1 Analisis Sistem Saat Ini
Sistem yang berjalan saat ini masih mengandalkan media social facebook.
Dimana setiap pengguna yang ingin melakukan diskusi bersama wajib bergabung
terlebih dahulu kedalam grup forum diskusi tertentu untuk memulai diskusi, setelah
bergabung dengan mendapatkan izin dari admin pengguna bisa memulai diskusi.
Dengan cara seperti ini terdapat beberapa kekurangan seperti untuk memulai
diskusi seorang pengguna perlu mendapatkan akses masuk terlebih dahulu dari
admin kerugiannya adalah ketika admin dari grup sudah tidak lagi aktif
menggunakan medial social sehingga tidak aka nada lagi pengguna yang dapat
masuk kedalam grup. Analisa sistem digambarkan pada Gambar 3.5 dibawah ini.

Gambar 3.5 Flowchart Sistem Saat Ini


22

3.2.2 Kelemahan Sistem Saat Ini


Sistem yang berlaku saat ini memiliki beberapa kekurangan selain sulitnya
untuk memulai diskusi dalam sistem saat ini masih tidak memiliki fitur penyaringan
posting, dimana postingan dengan kategori tertentu ditampilkan secara acak tidak
berdasarkan tanggal upload terakhir sehingga menyulitkan pengguna untuk mencari
kembali postingan yang akan didiskusikan.
Sistem saat ini belum menghadirkan fitur mencari diskusi yang dapat
diakses oleh semua pihak, di beberapa grup forum diskusi hal-hal seperti ini tidak
diperbolehkan sehingga informasi sangatlah dibatasi. Untuk mengakses forum
pengguna baru memerlukan perizinan dari admin untuk masuk kedalam sistem.
Apabila admin sudah tidak aktif lagi seorang pengguna baru tidak dapat masuk ke
sistem untuk mengikuti diskusi.
Tahapan Penelitian
Tahapan penelitian yang dilakukan dalam membangun sistem dalam
penelitian ini dapat di lihat pada Gambar 3.6 dibawah ini.

Gambar 3.6 Diagram Tahapan Penelitian


23

a. Observasi
Observasi dilakukan dengan melakukan pengamatan langsung dengan
mengakses social media facebook dan masuk kedalam grup diskusi tertentu.
Observasi juga dilakukan dengan mengamati fitur-fitur yang sudah maupun
belum tersedia di sistem saat ini.
b. Studi Pustaka
Studi pustaka dilakukan dengan mencari berbagai informasi yang
ddibutuhkan. Sumber studi pustaka diambil dari berbagai jurnal, skripsi dan
sumber lain dengan tema yang sama dengan penelitian ini.
c. Pengumpulan Data
Proses pengumpulan data dilakukan dengan mengumpulkan data yang akan
digunakan sebagai data latih dan data uji dalam penelitian. Data yang
dikumpulkan berupa data akun dan postingan didalam forum diskusi yang ada di
dalam media social facebook.
d. Perancangan Sistem
Perancangan sistem dibagi dengan beberapa perancangan utama, mulai dari
perancangan alur sistem, perancangan database, perancangan flowchart maupun
perancangan user interface. Perancangan user interface berguna untuk merancang
tampilan aplikasi agar pengguna mudah menggunakan aplikasi sistem serta
mengurangi kemungkinan human error dalam penggunaan sistem. Perancangan
alur sistem, database dan flowchart dilakukan dengan menggunakan perangkat
lunak Microsoft Visio sedangkan perancangan user interface menggunakan
perangkat lunak Adobe XD.
e. Implementasi
Dalam sistem ujian yang akan dibangun, sistem dibangun menggunakan
Bahasa pemrograman PHP. Implementasi antarmuka pengguna menggunakan
Bahasa pemrograman HTML dan Boostrap. Tools yang digunakan dalam proses
pengkodean adalah aplikasi Visual Studio Code. Data pada sistem disimpan ke
dalam basis data MySQL yang dibangun menggunakan aplikasi SqlYog sehingga
admin dapat melihat kembali atau mengolah data yang ada pada sistem.
24

f. Pengujian
Sistem yang telah dibangun kemudian dilakukan pengujian untuk mengetahui
apakah sistem telah sesuai yang diharapkan dan memastikan bahwa sistem tidak
memiliki kekurangan. Apabila ditemukan kekurangan dalam sistem segera untuk
diperbaiki kembali. Metode pengujian yang digunakan adalah metode blackbox
testing. Pengujian dilakukan dengan menguji semua fitur untuk memastikan
fungsionalitas dari sistem yang telah dibangun.

Rancangan Penelitian
Rancangan penelitian merupakan gambaran umum mengenai latar belakang
masalah, sistem yang diusulkan serta langkah yang dilakukan serta hasil akhir yang
diharapkan pada penelitian. Rancangan penelitian dapat dilihat pada Gambar 3.7.

Gambar 3.7 Rancangan Penelitian


a. Kondisi Awal
Kondisi awal menjelaskan bagaimana kondisi yang terjadi saat ini serta
masalah yang dihadapi. Saat ini forum diskusi online tentang game masih sangat
jarang sehingga media untuk saling berdiskusi para komunitas game online masih
sangat terbatas. Banyak dari mereka masih memanfaatkan media sosial Facebook
untuk saling berkomunikasi akan tetapi masih sedikitnya akses kedalam suatu
25

forum Facebook menjadikan komunikasi antar forum masih terbatas dan terlalu
privasi. Sehingga tidak semua orang dapat bergabung maupun mengakses suatu
forum diskusi.
b. Usulan Model
Usulan model berisi tentang usulan sistem yang akan dibangun. Sistem yang
diusulkan adalah forum diskusi online berbasis web dan mobile yang berguna
sebagai media komunikasi dan diskusi oleh sesama pengguna. Seorang pengguna
dapat memulai diskusi dengan memposting sebuah pertanyaan, tanggapan, atau
mengemukakan pendapat, kemudian pengguna lain dapat memberikan tanggapan
atas postingan tersebut. Sehingga media komunikasi antar pengguna dapat terjalin
dengan baik.
c. Kondisi Akhir
Kondisi akhir penelitian ini diharapkan dapat menjadikan sistem sebagai
media komunikasi yang baik antar sesama pengguna. Dengan adanya sistem ini
juga diharapkan dapat membangun komunitas yang sehat antar sesama pengguna
yang menggunakan sistem ini.
BAB IV
ANALISIS DAN DESAIN SISTEM

Analisis Sistem Yang Diusulkan


Sistem yang diusulkan adalah membangun sistem informasi forum diskusi
berbasis web dan mobile yang berfokus dalam kategori game online khususnya
Mobile Legends. Dengan penelitian ini diharapkan dapat mempermudah komunitas
Mobile Legends mendiskusikan berbagai macam hal serta meningkatkan rasa
kompetitif mereka. Forum diskusi yang dibangun diharapkan mampu menjadi
media penyedia informasi, mencari teman dan mencari relasi.
Sistem ini memiliki dua hak akses yaitu admin dan pengguna. Admin
berperan dalam pengolahan data master di dalam sistem yang dibangun
menggunakan website. Pengguna mengakses sistem dengan menggunakan mobile
dengan sistem operasi android dan berperan membuat postingan, memberikan
komentar dan memberikan like. Pengguna juga dapat memberikan laporan terhadap
suatu diskusi maupun komentar serta melaporkan suatu akun didalam sistem.
4.1.1 Analisis Fungsional
Dalam membangun sistem memiliki beberapa fasilitas yang dibutuhkan
mulai dari kebutuhan masukan, kebutuhan proses dan kebutuhan keluaran.
Kebutuhan fungsional dari sistem yang dibangun adalah sebagai berikut :
a. Analisis Kebutuhan Masukan
Masukan Login Admin : masukan berupa username dan password yang
digunakan dalam sistem.
Masukan Registrasi : masukan berupa username, password, nama lengkap
dan jenis kelamin.
Masukan Posting : masukan berupa username, posting, tanggal, waktu,
lokasi.
Masukan Registrasi Organizer : masukan username, password, nama
organizer, penanggungjawab.
b. Analisis Kebutuhan Proses
Proses login admin, merupakan proses verifikasi akun admin untuk

26
27

mendapatkan hak akses manipulasi data.


Proses registrasi, merupakan proses pendaftaran akun baru sebagai user dan
mendapatkan hak akses pengguna ataupun organizer tergantung registrasi
yang dilakukan.
Proses posting, merupakan proses menyimpan data posting kedalam sistem.
Data posting berupa username, posting, tanggal, waktu dan lokasi posting.
Proses membuat laporan, proses ini dikendalikan oleh pengguna. Seorang
pengguna dapat membuat laporan terhadap akun, diskusi maupun komentar
yang dirasa tidak pantas.
c. Analisis Kebutuhan Keluaran
Informasi data akun pengguna.
Informasi data posting.
Informasi data like.
Informasi data dilihat.
4.1.2 Analisis Non Fungsional
4.1.2.1 Perangkat Keras (Hardware) Yang Digunakan
Perangkat keras yang digunakan untuk membangun aplikasi ini adalah
sebagai berikut :
a. Notebook HP 14s-CF0044tx
b. Processor Intel Core i5-8250U
c. Monitor 14 inc 1366x768 px
d. Hardisk 1 TB
e. RAM 4 GB DDR4
4.1.2.2 Perangkat Lunak (Software) Yang Digunakan
Perangkat lunak yang digunakan untuk membangun website adalah sebagai
berikut :
a. Sistem Operasi Windows 11
b. Aplikasi Visual Studio Code untuk pengkodean
c. Database MySql
d. XAMPP sebagai server
e. SqlYoq sebagai perangkat lunak database
28

f. Microsoft Visio untuk pembuatan desain sistem


g. Adobe XD untuk pembuatan desain logik
4.1.3 Arsitektur Sistem
Arsitektur sistem berisi mengenai penjelasan alur sistem yang akan
dibangun. Dalam arsitektur sistem dijelaskan perbedaan hak akses dalam sistem
yaitu admin, user dan organizer. Admin bertugas mengelola data yang ada pada
sistem. User mendapatkan akses untuk membuat postingan dan membuat komentar.
Arsitektur sistem dapat dilihat pada Gambar 4.1 sedangkan Pemodelan Sistem
dapat dilihat pada Gambar 4.2.

Admin
Sistem Informasi Forum
Diskusi

Internet Server Basis Data

User

Gambar 4.1 Arsitektur Sistem

Gambar 4.2 Pemodelan Sistem


29

4.1.4 Sistem Yang Diusulkan


Sistem yang diusulkan menjelaskan setiap alur proses yang terjadi dari
setiap pengguna terhadap sistem yang dijalankan. Sistem yang diusulkan dapat
dilihat pada Gambar 4.3.

Gambar 4.3 Sistem Yang Diusulkan


Desain Sistem
Dalam desain sistem terdiri atas dua bagian utama yaitu desain logik dan
desain fisik. Desain logik terdiri dari flowchart, diagram konteks, Diagram jenjang,
Data Flow Diagram, flowchart dan Entity Relationship Diagram.
4.2.1 Desain Logik
4.2.1.1 Diagram Konteks
Dalam diagram konteks terdapat satu proses utama. Dijelaskan bahwa
terdapat dua hak akses didalam sistem informasi forum diskusi yaitu admin dan
pengguna. Admin berperan dalam pengolahan dan manipulasi data pada sistem.
Pengguna dapat membuat postingan diskusi serta memberikan komentar pada
semua postingan. Pengguna dapat memberikan laporan terhadap suatu
posting,komentar ataupun akun. Diagram konteks dapat dilihat pada Gambar 4.4.
30

Gambar 4.4 Diagram Konteks


4.2.1.2 Diagram Jenjang
Diagram jengang menggambarkan hubungan dari fungsi-fungsi yang ada di
dalam sistem secara berjenjang. Pada level 0 menjelaskan mengenai gambaran
umum sistem. Pada level 1 menjelaskan mengenai alur sistem secara menyeluruh,
dan pada level 2 menjelaskan sistem secara rinci. Rancangan diagram jenjang dapat
dilihat pada Gambar 4.5.

Sistem
Informasi
Forum Diskusi

4.0
1.0 2.0 3.0
Pengolahan
Login Daftar Diskusi
Data Master

3.1 3.2 3.3


Membuat Membuat Membuat
Posting Komentar Laporan

Gambar 4.5 Diagram Jenjang


4.2.1.3 Data Flow Diagram Level 1
Pada data flow diagram level 1 sistem forum diskusi online memiliki 5
proses yaitu proses login, proses daftar, proses diskusi dan pengolahan data master.
31

Proses login memiliki aliran data dari entitas pengguna terhadap tabel account yang
memiliki arti bahwa pengguna dapat login ke akun yang mereka miliki. Proses
daftar memiliki aliran data yang sama seperti proses logim, terdapat aliran data dari
entitas pengguna terhadap tabel account yang berarti pengguna dapat membuat
akun untuk masuk kedalam sistem. Proses diskusi memiliki aliran data dari semua
entitas yaitu pengguna dan admin terhadap tabel posting dan tabel komentar yang
memiliki arti bahwa semua entitas tersebut dapat membuat postingan atau komentar
diskusi serta memberikan laporan terhadap postingan atau komentar yang ada pada
sistem. Proses pengolahan data master terdapat aliran data dari entitas admin
terhadap semua tabel pada sistem yang berarti admin dapat mengontrol data yang
tersimpan dalam system untuk keperluan perawatan sistem. Data Flow Diagram
Level 1 dapat dilihat pada Gambar 4.6 dibawah ini.

Gambar 4.6 DFD Level 1


32

4.2.1.4 Data Flow Diagram Level 2


Pada data flow diagram level 2 memiliki beberapa proses pada setiap proses
utama. Pada proses diskusi memiliki tiga sub proses yaitu membuat posting,
membuat komentar dan membuat laporan. Proses membuat posting memiliki aliran
data dari entitas pengguna dan admin terhadap tabel post yang memiliki arti bahwa
kedua entitas tersebut dapat membuat postingan diskusi, pada proses membuat
komentar terdapat aliran data dari pengguna dan admin terhadap tabel komentar
yang memiliki arti bahwa admin dan pengguna dapat membuat komentar pada
setiap diskusi yang ada pada sistem. Proses membuat laporan memiliki aliran data
dari entitas pengguna terhadap tabel laporan yang memiliki arti bahwa pengguna
dapat membuat laporan terhadap diskusi, komentar maupun akun. Data Flow
Diagram level 2 dapat dilihat pada Gambar 4.7 dibawah ini.

Gambar 4.7 DFD Level 2


33

4.2.1.5 Flowchart Sistem


a. Flowchart Diskusi
Setelah berhasil masuk kedalam sistem melalui proses login maupun
pendaftaran pengguna dapat melakukan diskusi dengan membuat postingan serta
membuat komentar. Flowchart membuat diskusi dapat dilihat pada Gambar 4.8
dibawah ini.

Gambar 4.8 Flowchart Diskusi

4.2.1.6 Entity Relationship Diagram


Entity Relationship Diagram menggambar hubungan-hubungan antar tabel
dan entitas beserta dengan atribut didalamnya. Rancangan Entity Relationship
Diagram dapat dilihat pada Gambar 4.10 dibawah ini.
34

Gambar 4.9 Entity Relationship Diagram


4.2.1.7 Relasi Tabel
Relasi tabel digambarkan dengan garis-garis yang terhubung diantara
masing-masing table. Hubungan yang digambarkan merupakan hubungan Antara
primary key dan foreign key yang ada pada setiap tabel. Rancangan relasi tabel
dapat dilihat pada Gambar 4.11 dibawah ini.
35

Gambar 4.10 Relasi Tabel


4.2.1.9 Struktur Tabel
Struktur tabel berisi tentang penjelasan rinci mengenai atribut di dalam tabel
yang tersimpan di dalam basis data. Berikut penjelasan mengenai struktur setiap
tabel :
a. Tabel account
Primary key : username
Foreign key : -
Tabel 4.1 Tabel Account
Atribut Tipe Data Keterangan
username VARCHAR (50) Primary Key
password VARCHAR (100) -
email VARCHAR (100) -
nama VARCHAR (100) -
36

Atribut Tipe Data Keterangan


ENUM(‘Laki-Laki’, -
gender
‘Perempuan’)
bio VARCHAR(250) -
photo TEXT -
dibuat DATE -
blokir DATE -
ENUM(‘admin’,’user’, -
akses
’blokir’)
ENUM(‘sudah’,
verifikasi
’belum’)

b. Tabel post
Primary key : id_post
Foreign key : username, kategori
Tabel 4.2 Tabel Post
Atribut Tipe Data Keterangan
INT Primary Key
id
AUTO_INCREMENT
username TEXT Foreign Key
konten TEXT -
judul TEXT -
kategori INT (11) Foreign Key
waktu DATETIME -
konfirmasi ENUM(‘Ya’,’Tidak’) -

c. Tabel komentar
Primary key : id_komentar
Foreign key : username, id_post
Tabel 4.3 Tabel Komentar
Atribut Tipe Data Keterangan
INT Primary Key
id_komentar
AUTO_INCREMENT
username TEXT Foreign Key
id_post INT (11) Foreign Key
37

Atribut Tipe Data Keterangan


komentar TEXT -
waktu DATETIME -
konfirmasi ENUM(‘Ya’,’Tidak’) -

d. Tabel kategori
Primary key : id_kategori
Foreign key : -
Tabel 4.4 Tabel Kategori
Atribut Tipe Data Keterangan
INT Primary Key
id_kategori
AUTO_INCREMENT
nama_kategori TEXT -
warna TEXT -

e. Tabel like-unlike
Primary key : id
Foreign key : username, id_post
Tabel 4.5 Tabel like-unlike
Atribut Tipe Data Keterangan
INT Primary Key
id
AUTO_INCREMENT
username TEXT Foreign Key
id_post INT (11) Foreign Key
waktu Datetime -

f. Tabel notifikasi
Primary key : id
Foreign key : username, sumber, id_post
Tabel 4.6 Tabel Notifikasi
Atribut Tipe Data Keterangan
id Varchar(100) Primary Key
username TEXT Foreign Key
38

Atribut Tipe Data Keterangan


tipe ENUM(“suka”,”komentar”) -
notifikasi TEXT -
sumber TEXT Foreign Key
id_post INT (11) Foreign Key
waktu DATETIME -
dibaca ENUM (“Ya”,”Tidak”) -

g. Tabel laporan
Primary key : id
Foreign key : Pelapor
Tabel 4.7 Tabel Laporan
Atribut Tipe Data Keterangan
id Varchar(100) Primary Key
pelapor TEXT Foreign Key
ENUM(“user”, ”post”, -
tipe_laporan
“komentar”)
suspect TEXT -
alasan TEXT -
waktu DATETIME -
konfirmasi ENUM (“Ya”,”Tidak”) -

h. Tabel dilihat
Primary key : id
Foreign key : Pelapor

Tabel 4.8 Tabel Dilihat


Atribut Tipe Data Keterangan
INT Primary Key
id
AUTO_INCREMENT
id_post INT (11) Foreign Key
sumber TEXT Foreign Key
waktu Datetime -
39

4.2.2 Desain Antarmuka


Desain antarmuka berisi tentang perancangan tampilan antarmuka sebelum
diimplementasikan pada sistem. Desain antarmuka yang dirancang antara lain
halaman daftar, halaman login, halaman dashboard, halaman diskusi dan halaman
menulis diskusi.
a. Halaman Daftar
Halaman daftar digunakan oleh pengguna untuk mendaftarkan akun ke dalam
sistem. Dimana dengan akun tersebut pengguna mendapatkan akses untuk membuat
diskusi, memberikan komentar serta memanipulasi data akun. Desain halaman
daftar dapat dilihat pada Gambar 4.12.

Gambar 4.11 Desain Halaman Daftar


b. Halaman Login
Halaman login berfungsi untuk mendapat hak akses masuk kedalam sistem.
Pengguna dapat masuk kedalam sistem dengan akun yang sudah mereka daftarkan
sebelumnya. Desain halaman login dapat dilihat pada Gambar 4.13.
40

Gambar 4.12 Desain Halaman login


c. Halaman Home User
Halaman Home User merupakan halaman utama dari sistem. Pada halaman ini
pengguna dapat melihat daftar diskusi yang terlah di publikasikan. Pada halaman
ini pengguna juga dapat mulai mempublikasikan diskusi sendiri. Halaman home
versi website dapat di lihat pada Gambar 4.14 dan versi mobile pada Gambar 4.15.

Gambar 4.13 Desain Halaman Home User Versi Web


41

Gambar 4.14 Desain Halaman Home User Versi Mobile

d. Halaman Profile
Halaman profile menampilkan data pengguna yang tersimpan meliputi foto,
username, nama lengkap, gender, biografi serta beberapa data pada sistem.
Halaman profile versi web dapat dilihat pada Gambar 4.16 dan versi mobile pada
Gambar 4.17.

Gambar 4.15 Desain Halaman Profile Versi Web


42

Gambar 4.16 Desain Halaman Profile Versi Mobile


BAB V
IMPLEMENTASI HASIL SERTA PEMBAHASAN

Implementasi
Pada penelitian ini dibedakan menjadi tiga bagian yaitu implementasi
database, implementasi website admin dan implementasi mobile app.
5.1.1 Implementasi Mobile App
Mobile App digunakan oleh user untuk melakukan berbagai macam aktifitas
didalam sistem.
Membuat Koneksi Api
Pada aplikasi Android proses pengambilan dan pengirim data ke server
memerlukan sebuah api. Api tersebut kemudian ditangkap oleh sebuah library
retrofit untuk kemudian dikirimkan kedalam sistem. Berikut script koneksi api
yang ditunjukan pada Tabel 5.1.
Tabel 5.1 Script Koneksi Api
Script Koneksi Api
object RetrofitClient {

private const val BASE_URL =


"https://lobbyforum.000webhostapp.com/api/"

val instance: Api by lazy{


val retrofit = Retrofit.Builder()
.baseUrl(BASE_URL)

.addConverterFactory(GsonConverterFactory.create())
.build()

retrofit.create(Api::class.java)
}

43
44

Proses Login
Untuk melakukan berbagai aktifitas didalam sistem seorang user perlu
melakukan login. Script proses login dapat dilihat pada Tabel 5.2.
Tabel 5.2 Script Proses Login
Script Proses Login
private fun Login(username: String){

RetrofitClient.instance.getUser(username =
username).
enqueue(object:
Callback<ArrayList<LoginResponse>>{
override fun onResponse(
call: Call<ArrayList<LoginResponse>>,
response:
Response<ArrayList<LoginResponse>>
) {
loginPassword =
response.body()?.get(0)?.password.toString()
if(username != ""){

if(loginPassword.equals(password)){
goHome()
}
else{
etPasssword.text = null

Toast.makeText(applicationContext, "Password anda


tidak cocok", Toast.LENGTH_SHORT).show()
}
}
else{
Toast.makeText(applicationContext,
"Username tidak boleh kosong",
Toast.LENGTH_SHORT).show()
}
}

override fun onFailure(call:


Call<ArrayList<LoginResponse>>, t: Throwable) {
Toast.makeText(applicationContext,
"Username tidak ditemukan", Toast.LENGTH_SHORT).show()
}

})

}
45

Proses Daftar
Script proses daftar dapat dilihat pada Tabel 5.3.
Tabel 5.3 Script Proses Daftar
Script Proses Daftar
private fun register() {

RetrofitClient.instance.userRegister(
username = username,
password = password,
konfirmasi = konfirmasi)
.enqueue(object:
Callback<ArrayList<RegisterResponse>> {
override fun onResponse(
call:
Call<ArrayList<RegisterResponse>>,
response:
Response<ArrayList<RegisterResponse>>
) {

override fun onFailure(call:


Call<ArrayList<RegisterResponse>>, t: Throwable) {
if(username != "" && password !=
""){

if(password.equals(konfirmasi)){

Toast.makeText(applicationContext, "Pendaftaran akun


berhasil", Toast.LENGTH_SHORT).show()
goLogin()
}
else{

Toast.makeText(applicationContext, "Konfirmasi
Password Salah", Toast.LENGTH_SHORT).show()
}
}
else{
etPasssword.text = null
etKonfirmasi.text = null

Toast.makeText(applicationContext, "Username atau


Password tidak boleh kosong",
Toast.LENGTH_SHORT).show()
}

}
46

})
}

Membuat Diskusi
Script membuat diskusi dapat dilihat pada Tabel 5.4.
Tabel 5.4 Script Membuat Diskusi
Script Membuat Diskusi
if (isset($_POST["btnPost"])) {
$p_judul = $_POST["p_judul"];
$p_konten = $_POST["p_konten"];
$p_kategori = $_POST["p_kategori"];
$post = mysqli_query($conn,"INSERT INTO post
VALUES(NULL,'$username',NOW(),s'$p_konten','$p_kategor
i','$p_judul')");
}

Membuat Komentar
Script membuat komentar dapat dilihat pada Tabel 5.5.
Tabel 5.5 Script Membuat Komentar
Script Membuat Komentar
if (isset($_POST['btnKomentar'])) {

if ($username == null) {
echo '<script> location.replace("login.php");
</script>';
} else {
$p_comment = $_POST["komentar"];
$postcomm = mysqli_query($conn, "INSERT INTO
komentar VALUES
(NULL,'$id','$username','$p_comment',NOW())");

$id_comm = "K" . $id . $username;


mysqli_query($conn, "INSERT INTO notifikasi
VALUES ('$id_comm','$user_post','komentar','baru saja
mengomentari diskusi Anda tentang
<strong>$judul_post</strong>','$username','$id',NOW(),
'tidak')");
}
}
47

Memberikan Like
Script memberikan like dapat dilihat pada Tabel 5.6.
Tabel 5.6 Script Memberikan Like
Script Memberikan Like
$id = $_GET['id'];
$target = $_GET['target'];
$username_log = $_GET['username'];
$id_like = "L" . $id . $username_log;

mysqli_query($conn, "INSERT INTO like_unlike VALUES


(NULL,'$username_log','$id',NOW())");

Membuat Laporan
Script membuat laporan dapat dilihat pada Tabel 5.7.
Tabel 5.7 Script Membuat Laporan
Script Membuat Laporan
function makeReport($reportUser, $reportTipe,
$reportSuspect, $reportAlasan)
{
mysqli_query($conn, "INSERT INTO laporan
VALUES(NULL,'$reportUser','$reportTipe','$reportSuspec
t','$reportAlasan',NOW(),'Tidak')");
}

5.1.2 Implementasi Api


Api berfungsi sebagai media lalu lintas data. Api dalam penelitian ini
berfungsi untuk mengirimkan maupun menerima data dari server ke mobileapp atau
sebaliknya.
Api data user
Script api data user dapat dilihat pada Tabel 5.8.
Tabel 5.8 Script Api Data User
48

Script Api Data User


if (isset($_GET['username'])) {
$username = $_GET['username'];
$query = mysqli_query($conn, "SELECT * FROM
account WHERE username = '$username'");
} else {
$query = mysqli_query($conn, "SELECT * FROM
account");
}

$count = mysqli_num_rows($query);

if ($count > 0) {
$posts = array();
if (mysqli_num_rows($query)) {
while ($get = mysqli_fetch_assoc($query)) {
$posts[] = $get;
}
}
$data = json_encode($posts, JSON_PRETTY_PRINT);
header('Content-Type: application/json');
echo $data;
} else {
$posts = array(
"username" => NULL,
"password" => NULL, "nama" => NULL,
"gender" => NULL, "bio" => NULL,
"photo" => NULL, "dibuat" => NULL,
"blokir" => NULL, "akses" => NULL
);
$data = json_encode($posts, JSON_PRETTY_PRINT);
header('Content-Type: application/json');
echo $data;
}

Api daftar
Script api daftar dapat dilihat pada Tabel 5.9.
Tabel 5.9 Script Api Daftar
Script Api Daftar
$username = $_GET['username'];
$password = $_GET['password'];
$konfirmasi = $_GET['konfirmasi'];

if ($password == $konfirmasi) {
$posts = array(
"username" => $username,
"password" => $password,
49

"konfirmasi" => $konfirmasi,


"response" => "200",
"result" => "Data Berhasil Ditambah"
);
$data = json_encode($posts);
header('Content-Type: application/json');
echo $data;

$regist = mysqli_query(
$conn,
"INSERT INTO account
VALUES('$username','$password','$username',
'Laki-Laki','','',NOW(),NULL,'user')"
);
} else {
$posts = array(
"username" => $username,
"password" => $password,
"konfirmasi" => $konfirmasi,
"response" => "400",
"result" => "Proses Registrasi Gagal"
);
$data = json_encode($posts);
header('Content-Type: application/json');
echo $data;
}

Hasil
5.2.1 Hasil Website Admin
Hasil dari implementasi yang telah dilakukan mendapatkan hasil berupa
website admin yang berfungsi untuk mengelola berbagai data pada sistem.
Halaman Login
Berikut adalah hasil dari implementasi dari script halaman login yang dapat
dilihat pada Gambar 5.1.
50

Gambar 5.1 Halaman Login


Halaman Dashboard
Berikut adalah hasil dari implementasi dari script halaman dashboard yang
dapat dilihat pada Gambar 5.3.

Gambar 5.2 Halaman Dashboard


Halaman Data User
Berikut adalah hasil dari implementasi dari script halaman data user yang
dapat dilihat pada Gambar 5.3.
51

Gambar 5.3 Halaman Data User


Halaman Data Kategori
Berikut adalah hasil dari implementasi dari script halaman data kategori yang
dapat dilihat pada Gambar 5.4.

Gambar 5.4 Halaman Data Kategori


5.2.2 Hasil Mobile App
Hasil dari implementasi yang telah dilakukan mendapatkan hasil berupa
mobile app yang digunakan oleh user untuk melakukan berbagai aktifitas didalam
sistem.
Halaman Login Mobile
Berikut adalah hasil dari implementasi dari script halaman login mobile yang
dapat dilihat pada Gambar 5.5.
52

Gambar 5.5 Halaman Login Mobile


Halaman Daftar Mobile
Berikut adalah hasil dari implementasi dari script halaman daftar mobile yang
dapat dilihat pada Gambar 5.6.

Gambar 5.6 Halaman Daftar Mobile


53

Halaman Dashboard Mobile


Berikut adalah hasil dari implementasi dari script halaman dashboard mobile
yang dapat dilihat pada Gambar 5.7.

Gambar 5.7 Halaman Dashboard Mobile


Halaman Profile Mobile
Berikut adalah hasil dari implementasi dari script halaman profile mobile yang
dapat dilihat pada Gambar 5.8.

Gambar 5.8 Halaman Profile Mobile


54

Bilah Notifikasi Mobile


Berikut adalah hasil dari implementasi dari script bilah notifikasi yang dapat
dilihat pada Gambar 5.9.

Gambar 5.9 Bilah Notifikasi Mobile

Pembahasan
Pembahasan berisi tentang hasil pengujian dari sistem yang telah dibangun.
Pengujian ini dilakukan dengan menggunakan metode black box testing.
5.3.1 Pengujian Login
Pengujian login dilakukan dengan beberapa percobaan dengan hasil yang
ditunjukan pada Tabel 5.10 dibawah ini.
Tabel 5.10 Hasil Pengujian Login
Yang
Data Masukan Hasil Pengujian Kesimpulan
Diharapkan
Proses login : Data akun Pengguna
Username dan sesuai diarahkan ke [X] Diterima
Password sehingga halaman utama [ ] Ditolak
pengguna
55

Yang
Data Masukan Hasil Pengujian Kesimpulan
Diharapkan
diarahkan ke
halaman utama
Proses Daftar : Data yang Proses
Username, dimasukan pendaftaran
Password dan lengkap dan berhasil [X] Diterima
Konfirmasi sesuai, proses [ ] Ditolak
pendaftaran
berhasil.

5.3.2 Pengujian Halaman Utama


Pengujian halaman utama dilakukan dengan beberapa percobaan dengan
hasil yang ditunjukan pada Tabel 5.11 dibawah ini.
Tabel 5.11 Hasil Pengujian Halaman Utama
Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan
Proses input Data akun sesuai Pengguna
diskusi sehingga diarahkan ke
[X] Diterima
pengguna halaman utama
[ ] Ditolak
diarahkan ke
halaman utama
Menekan tombol Data like masuk Data like masuk
like kedalam basis kedalam sistem,
[X] Diterima
data dan nilai jumlah like
[ ] Ditolak
pada jumlah like bertambah
bertambah
Memberikan Komentar Komentar
komentar ditampilkan muncul, data
[X] Diterima
dibawah diskusi, komentar
[ ] Ditolak
data komentar bertambah
bertambah
56

Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan


Klik judul diskusi Pengguna Pengguna beralih
dialihkan ke halaman
kedalam halaman diskusi, data [X] Diterima
diskusi, data dilihat bertambah [ ] Ditolak
jumlah dilihat
bertambah

5.3.3 Pengujian Halaman Profile


Pengujian halaman profile dilakukan dengan beberapa percobaan dengan
hasil yang ditunjukan pada Tabel 5.12 dibawah ini.
Tabel 5.12 Hasil Pengujian Halaman Profile
Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan
Klik tombol ubah Data masukan Data berubah
profile, data lengkap, data sesuai dengan
[X] Diterima
masukan lengkap berubah sesuai data baru
[ ] Ditolak
dengan data yang
baru
Klik tombol Data laporan Data laporan
[X] Diterima
laporkan, lengkap, laporan diterima oleh
[ ] Ditolak
memberi laporan deterima admin admin

5.3.4 Pengujian Halaman Admin


Pengujian halaman admin dilakukan dengan beberapa percobaan dengan
hasil yang ditunjukan pada Tabel 5.13 dibawah ini.
Tabel 5.13 Hasil Pengujian Halaman Admin
Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan
Menekan menu Admin diarahkan Admin beralih ke
[X] Diterima
user ke halaman data halaman data user
[ ] Ditolak
user
57

Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan


Menemukan Admin diarahkan Admin beralih ke
[X] Diterima
Kategori ke halaman data halaman data
[ ] Ditolak
kategori kategori
Menemukan Admin diarahkan Admin beralih ke
[X] Diterima
Laporan ke halaman data halaman data
[ ] Ditolak
laporan laporan

5.3.5 Pengujian Halaman Kategori


Pengujian halaman kategori dilakukan dengan beberapa percobaan dengan
hasil yang ditunjukan pada Tabel 5.14 dibawah ini.
Tabel 5.14 Hasil Pengujian Halaman Kategori
Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan
Menekan tombol Data masukan Data masuk
tambah kategori, lengkap, data kedalam sistem [X] Diterima
memasukan data masuk kedalam [ ] Ditolak
secara lengkap sistem
Menekan tombol Data masukan Data berubah
ubah kategori, lengkap, data sesuai masukan [X] Diterima
memasukan data berubah sesuai [ ] Ditolak
secara lengkap masukan
Menekan tombol Data terhapus dari Data terhapus [X] Diterima
hapus kategori sistem [ ] Ditolak

5.3.6 Pengujian Halaman User


Pengujian halaman user dilakukan dengan beberapa percobaan dengan hasil
yang ditunjukan pada Tabel 5.15 dibawah ini.
58

Tabel 5.15 Hasil Pengujian Halaman User


Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan
Menekan tombol Hak akses Hak akses
blokir pengguna dinonaktifkan,
[X] Diterima
dinonaktifkan pengguna tidak
[ ] Ditolak
bisa login
kedalam sistem
Menekan tombol Hak akses Hak akses
aktifkan pengguna dikembalikan,
[X] Diterima
dikembalikan pengguna bisa
[ ] Ditolak
login kedalam
sistem

5.3.7 Pengujian Halaman Laporan


Pengujian halaman laporan dilakukan dengan beberapa percobaan dengan
hasil yang ditunjukan pada Tabel 5.16 dibawah ini.
Tabel 5.16 Hasil Pengujian Halaman Laporan
Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan
Menekan tombol Diskusi/komentar/ Diskusi/komentar/
blokir pengguna Pengguna
dinonaktifkan, dinonaktifkan
diskusi dan
[X] Diterima
komentar tidak
[ ] Ditolak
muncul pada
sistem atau
pengguna
terblokir
Menekan tombol Hak akses Hak akses
aktifkan diskusi/komentar/ dikembalikan [X] Diterima
Pengguna [ ] Ditolak
dikembalikan
59

Data Masukan Yang Diharapkan Hasil Pengujian Kesimpulan


Menekan tombol Admin dialihkan Admin dialihkan
suspect ke halaman ke halaman yang
[X] Diterima
diskusi/komentar/ dituju
[ ] Ditolak
profile user
terlapor
Menekan tombol Admin dialihkan Halaman beralih
[X] Diterima
report by ke halaman ke halaman
[ ] Ditolak
profile pelapor profile pelapor
BAB VI
PENUTUP
Kesimpulan
Sistem informasi forum diskusi game online berbasis web dan mobile
berhasil dibuat. Sistem dibuat menggunakan bahasa pemrograman PHP, HTML
dan Javascript untuk pembuatan website serta Bahasa pemrograman kotlin dan java
untuk pembuatan mobileapp dan penggunaan database MySql berhasil digunakan
sebagai media diskusi dan komunikasi komunitas game online secara umum.
Sistem diuji menggunakan metode blackbox testing untuk mengetahui
kekurangan dan kelemahan sistem yang telah dibangun. Hasil pengujian
menunjukan bahwa sistem yang dibangun sudah sesuai dengan apa yang
diharapkan penulis dan memungkinkan untuk dilakukan pengembangan lebih
lanjut pada sistem yang telah dibangun.
Hasil penelitian ini menunjukkan bahwa sistem informasi forum diskusi
yang dibangun bisa menjadi wadah komunikasi, penyaluran informasi dan diskusi
komunitas game online. Pendekatan pembuatan aplikasi secara mobile membuat
pengguna mudah dalam mengakses dan melakukan interaksi pada sistem forum
diskusi yang sudah dibangun.
Saran
Saran yang diterima dalam penelitian ini adalah dalam pengembangan yang
lebih lanjut perlu adanya beberapa fitur yang dapat ditambahkan untuk semakin
mempermudah pengguna dalam melakukan diskusi dan berkomunikasi didalam
sistem, salah satu fitur yang dapat bermanfaat adalah fitur private chat yang belum
tersedia pada penelitian ini.

60
DAFTAR PUSTAKA

Almasik, S., Atmadja, A.R. and Pariyatin, Y. (2021), Rancang Bangun Aplikasi
Forum Diskusi Usaha Mikro Kecil Dan Menengah Berbasis Web, Jurnal
Algoritma, 17(2), 168–175.
Dr. Gede Indrawan (2021), Database MySQL Dengan Pemograman PHP -
Rajawali Pers, PT. RajaGrafindo Persada.
Elgamar (2020), Buku Ajar Konsep Dasar Pemrograman Website Dengan PHP,
Ahlimedia Book.
Enterprise, J. (2018), Pemrograman Database Dengan Python Dan MySQL, Elex
Media Komputindo.
Fahmi, M.N., Hidayat, S., Ikhsan, A., Satrya, F. and Kusumah, F. (2018), Sistem
Informasi Forum Diskusi Untuk Penanganan Kerugian Pascapanen Berbasis
Web, , 384–393.
Faisal, M.R. and Abadi, F. (2020), Pemrograman Web Dasar I: Belajar HTML 5,
M Reza Faisal.
Fauzi, R.A. (2017), Sistem Informasi Akuntansi (Berbasis Akuntansi), Yogyakarta:
Deepublish.
Fitriani, Pakpahan, Y. and Roida Adrianichsan (2020), Sistem Informasi Forum
Diskusi Online Antarmahasiswa Pada Smartphone, , 4(4), 92–101.
Gardenia, Y. and Hardaya, A. (2021), Perancangan Forum Diskusi Universitas
Suryadarma Berbasis Website Dan Aplikasi Android, JSI (Jurnal Sistem
Informasi) Universitas Suryadarma, 8(1), 203–212.
Gustian, H., Jaenudin, J., Eosina, P., Teknik, J., Teknik, F., Ibn, U., … Bogor, K.
(2019), Sistem Informasi Forum Diskusi Layanan Mandiri Online Warga RW
09 Kelurahan Karadenan Kecamatan Cibinong Kabupaten Bogor, IKRA-ITH
INFORMATIKA : Jurnal Komputer Dan Informatika, 3(1), 46–54.
Jannah, M., Sarwandi and Creative, C. (2019), Mahir Bahasa Pemrograman PHP,
Elex Media Komputindo.
Kurniawan, T.A. (2020), Sistem Informasi Akuntansi Dengan Pendekatan Simulasi,
Sleman: Deepublish.
Munazilin, A. and Santoso, F. (2020), Analisis Dan Perancangan Forum
Komunikasi Mahasiswa Pascasarjana Universitas Ibrahimy Berbasis
Website, Jurnal Inovasi Penelitian, 1(7), 1487–1494.
Musnaini and Wijoyo, H. (2021), UMKM Digital Era New Normal, Insan Cendekia
Mandiri.
Priowirjanto, D.E.S., Hatami, R.F. and Firdausa, S. (2021), Terminologi Ekonomi
Dan Teknologi Informasi Dalam Hukum Ekonomi Pada Era Ekonomi Digital:
Bintang Pustaka, Bintang Pustaka Madani.
Rahardianti, E.C., Santoso, K.I., Wahyudiono, S., Informatika, T., Informasi, S. and
Informatika, M. (2020), Rancang Bangun Website Forum Komunitas Pecinta
Film Drama Korea, , 16(2), 1–11.
Sari, V.N. and Anggraini, D. (2020), Sumber Daya Manusia Di Era Tourism 4.0,
Insan Cendekia Mandiri.
61
62

Satria, F., Chasanah, N. and Iskandar, D. (2020), Aplikasi Forum Diskusi


Himpunan Mahasiswa Teknik Universitas Jenderal Soedirman Menggunakan
Laravel, Jurnal Teknik Informatika (Jutif), 1(1), 1–6.
Sudarma, M. (2021), Belajar Merdeka Belajar: Menjadi Manusia, Elex Media
Komputindo.
Supriyatna, A. and Nugroho, M.A.S. (2018), Sistem Informasi Forum Diskusi
Programmer Berbasis Web Menggunakan Rapid Application Development,
Teknika, 7(2), 138–147.
Wahyu, A.P. and Hidayat, T. (2022), Sistem Informasi Jejaring Sosial Dan Forum
Diskusi Berbasis PHP, Jurnal Ilmiah Teknologi Infomasi Terapan, 8(2), 320–
324.
Wahyuningrum, R. and Rayvin Augusta (2017), Sistem Forum Diskusi Online
Warga RW 02 Kelurahan Jati Kecamatan Pulogadung Jakarta Timur, , 4(1),
36–54.
Wibawanto, W. (2017), Desain Dan Pemrograman Multimedia Pembelajaran
Interaktif, Jember: Cerdas Ulet Kreatif Publisher.
LAMPIRAN

Lampiran 1. Source Code


<?php
$servername = "localhost";
$database = "db_lobby";
$username = "root";
$password = "";

$conn = mysqli_connect($servername, $username, $password,


$database);
if (!$conn) {
die("Koneksi gagal: " . mysqli_connect_error());
}
mysqli_query($conn, "SET time_zone = '+07:00'");
mysqli_query($conn, "SET lc_time_names = 'id_ID';");
?>

<?php
if (isset($_POST["btnMasuk"])) {
$login_username = $_POST['username'];
$login_password = $_POST['password'];
$login = mysqli_query($conn, "SELECT * FROM account WHERE
username = '$login_username'");

$count = mysqli_num_rows($login);
if ($count == 1) {
while ($row = mysqli_fetch_array($login)) {
if ($login_username == $row['username'] && $login_password
== $row['password']) {
if ($row['akses'] == "user") {
$_SESSION['user_log'] = $login_username;
echo '<script> location.replace("index.php?search=");
</script>';

}
if ($row['akses'] == "admin") {
$_SESSION['user_log'] = $login_username; echo '<script>
location.replace("admin/"); </script>';

}
if ($row['akses'] == "blokir") {
?>
<div class="alert alert-secondary align-items-center"
role="alert">

63
64

<i class="bi bi-exclamation-triangle-fill me-2"></i> Maaf


akun anda telah dinonaktifkan</div>
<?php
} else {
?>
<div class="alert alert-danger align-items-center"
role="alert">
<i class="bi bi-exclamation-triangle-fill me-2"></i>
Username dan Password tidak cocok
</div>
<?php

} else {

?>
<div
class="alert alert-danger align-items-center"
role="alert"><i class="bi bi-exclamation-triangle-fill me-
2"></i> Username tidak ditemukan
</div>
<?php

}
?>

<?php
if (isset($_POST["btnDaftar"])) {
$reg_username = $_POST['username'];
$reg_password = $_POST['password'];
$reg_confirm = $_POST['konfirmasi'];

if ($reg_password == $reg_confirm) {
$regist = mysqli_query($conn, "INSERT INTO account
VALUES('$reg_username','$reg_password','$reg_username','La
ki-Laki','','',NOW(),NULL,'user')");
if ($regist) {
$_SESSION['user_log'] = $reg_username;
echo '<script> location.replace("login.php"); </script>';
} else {
?>
<div class="alert alert-danger align-items-center"
role="alert"><i class="bi bi-exclamation-triangle-fill me-
2"></i> Username sudah terdaftar
65

</div>
<?php
}
} else {
?>
<div class="alert alert-danger align-items-center"
role="alert">
<i class="bi bi-exclamation-triangle-fill me-2"></i>
Konfirmasi password salah
</div>
<?php
}
}
?>

<?php

include "config.php";

$pindah = $_GET['url'];
$id = $_GET['id'];
$target = $_GET['target'];
$username_log = $_GET['username'];

$id_like = "L" . $id . $username_log;

$new_url = ".." . $pindah;

mysqli_query($conn, "INSERT INTO like_unlike VALUES


(NULL,'$username_log','$id',NOW())");

$cek = mysqli_query($conn, "SELECT judul FROM post WHERE


id = '$id'");
$data = mysqli_fetch_array($cek);
$judul = $data['judul'];
mysqli_query($conn, "INSERT INTO notifikasi VALUES
('$id_like','$target','suka','baru saja menyukai diskusi
Anda tentang
<strong>$judul</strong>','$username_log','$id',NOW(),'tida
k')");

?>
<script>
location.replace("<?php echo $new_url; ?>")
</script>
<?php

include "config.php";
66

$pindah = $_GET['url'];
$id_like = $_GET['id'];
$new_url = ".." . $pindah;

mysqli_query($conn, "DELETE FROM like_unlike WHERE id =


'$id_like'");

?>
<script>
location.replace("<?php echo $new_url; ?>")
</script>

<?php
function makeReport($reportUser, $reportTipe,
$reportSuspect, $reportAlasan)
{
include "config.php";
mysqli_query($conn, "INSERT INTO laporan
VALUES(NULL,'$reportUser','$reportTipe','$reportSuspect','
$reportAlasan',NOW(),'Tidak')");
}
?>

<?php
if (isset($_POST["btnPost"])) {
$p_judul = $_POST["p_judul"];
$p_konten = $_POST["p_konten"];
$p_kategori = $_POST["p_kategori"];

$post = mysqli_query(
$conn,"INSERT INTO post
VALUES(NULL,'$username',NOW(),'$p_konten','$p_kategori','$
p_judul')"

);
echo '<script> location.replace("index.php"); </script>';
}
?>

<?php
include "../../config.php";

if (isset($_GET['username'])) {
$username = $_GET['username'];
$query = mysqli_query($conn, "SELECT * FROM account
WHERE username = '$username'");
} else {
67

$query = mysqli_query($conn, "SELECT * FROM account");


}

$count = mysqli_num_rows($query);

if ($count > 0) {
$posts = array();
if (mysqli_num_rows($query)) {
while ($get = mysqli_fetch_assoc($query)) {
$posts[] = $get;
}
}
$data = json_encode($posts, JSON_PRETTY_PRINT);
header('Content-Type: application/json');
echo $data;
} else {
$posts = array(
"username" => NULL,
"password" => NULL, "nama" => NULL,
"gender" => NULL, "bio" => NULL,
"photo" => NULL, "dibuat" => NULL,
"blokir" => NULL, "akses" => NULL
);
$data = json_encode($posts, JSON_PRETTY_PRINT);
header('Content-Type: application/json');
echo $data;
}
?>

<?php
include "../../config.php";

$id = $_GET['username'];

$query = mysqli_query($conn, "SELECT * FROM account WHERE


username = '$id'");
$count = mysqli_num_rows($query);

if ($count > 0) {
$posts = array();
if (mysqli_num_rows($query)) {
while ($get = mysqli_fetch_assoc($query)) {
$posts[] = $get;
}
}
$data = json_encode($posts, JSON_PRETTY_PRINT);
header('Content-Type: application/json');
echo $data;
} else {
$posts = array(
68

"username" => NULL,


"password" => NULL, "nama" => NULL,
"gender" => NULL, "bio" => NULL,
"photo" => NULL, "dibuat" => NULL,
"blokir" => NULL, "akses" => NULL
);
$data = json_encode($posts, JSON_PRETTY_PRINT);
header('Content-Type: application/json');
echo $data;
}
?>

<?php
include "../../config.php";

$username = $_GET['username'];
$password = $_GET['password'];
$konfirmasi = $_GET['konfirmasi'];

if ($password == $konfirmasi) {
$posts = array(
"username" => $username,
"password" => $password,
"konfirmasi" => $konfirmasi,
"response" => "200",
"result" => "Data Berhasil Ditambah"
);
$data = json_encode($posts);
header('Content-Type: application/json');
echo $data;

$regist = mysqli_query(
$conn,
"INSERT INTO account
VALUES('$username','$password','$username',
'Laki-Laki','','',NOW(),NULL,'user')"
);
} else {
$posts = array(
"username" => $username,
"password" => $password,
"konfirmasi" => $konfirmasi,
"response" => "400",
"result" => "Proses Registrasi Gagal"
);
$data = json_encode($posts);
header('Content-Type: application/json');
echo $data;
}
?>
69

<?php
if (isset($_POST["btnTambah"])) {
$nama = $_POST["nama_kategori"];
$warna = $_POST["warna"];
$add = mysqli_query($conn, "INSERT INTO kategori
VALUES(NULL,'$nama','$warna')");
echo '<script> location.replace("datakategori.php");
</script>';
}
?>

<?php
if (isset($_POST["btnEdit" . $data['id']])) {
$id = $_POST["id_kategori"];
$nama = $_POST["nama_kategori"];
$warna = $_POST["warna"];

$edit = mysqli_query($conn, "UPDATE kategori SET


nama_kategori = '$nama',warna = '$warna' WHERE id =
'$id'");
echo '<script> location.replace("datakategori.php");
</script>';
}
?>

<?php
include "../config.php";
$id = $_GET['id'];
mysqli_query($conn, "DELETE FROM kategori WHERE id =
'$id'");
echo '<script> location.replace("datakategori.php");
</script>';
?>

package com.alfari.lobby

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response

class LoginActivity() : AppCompatActivity() {


70

lateinit var username: String


lateinit var password: String
lateinit var etUsername: EditText
lateinit var etPasssword: EditText
lateinit var btnMasuk: Button
lateinit var btnRegister: Button

private var loginPassword: String = ""

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)

etUsername = findViewById(R.id.etUsername) as
EditText
etPasssword = findViewById(R.id.etPassword) as
EditText
btnMasuk = findViewById(R.id.btnMasuk) as Button
btnRegister = findViewById(R.id.btnReg) as Button

btnMasuk.setOnClickListener {
username = etUsername.text.toString()
password = etPasssword.text.toString()
Login(username)
}

btnRegister.setOnClickListener {
goRegister()
}

private fun Login(username: String){

RetrofitClient.instance.getUser(username =
username).
enqueue(object:
Callback<ArrayList<LoginResponse>>{
override fun onResponse(
call: Call<ArrayList<LoginResponse>>,
response:
Response<ArrayList<LoginResponse>>
) {
loginPassword =
response.body()?.get(0)?.password.toString()
if(username != ""){
if(loginPassword.equals(password)){
goHome()
}
else{
71

etPasssword.text = null
Toast.makeText(applicationContext,
"Password anda tidak cocok", Toast.LENGTH_SHORT).show()
}
}
else{
Toast.makeText(applicationContext,
"Username tidak boleh kosong", Toast.LENGTH_SHORT).show()
}
}

override fun onFailure(call:


Call<ArrayList<LoginResponse>>, t: Throwable) {
Toast.makeText(applicationContext,
"Username tidak ditemukan", Toast.LENGTH_SHORT).show()
}

})

private fun goHome(){


val intent = Intent(this,
MainActivity::class.java)
intent.putExtra("loginUsername", username)
startActivity(intent)
}

private fun goRegister(){


val intent = Intent(this,
DaftarActivity::class.java)
startActivity(intent)
}

package com.alfari.lobby

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response

class DaftarActivity() : AppCompatActivity() {


72

lateinit var username: String


lateinit var password: String
lateinit var konfirmasi: String
lateinit var etUsername: EditText
lateinit var etPasssword: EditText
lateinit var etKonfirmasi: EditText
lateinit var btnRegist: Button
lateinit var btnBack: Button

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
setContentView(R.layout.activity_daftar)

etUsername = findViewById(R.id.etUsernameReg) as
EditText
etPasssword = findViewById(R.id.etPasswordReg) as
EditText
etKonfirmasi = findViewById(R.id.etKonfirmasi) as
EditText
btnRegist = findViewById(R.id.btnDaftar) as Button
btnBack = findViewById(R.id.btnHome) as Button

btnRegist.setOnClickListener {
username = etUsername.text.toString()
password = etPasssword.text.toString()
konfirmasi = etKonfirmasi.text.toString()
register()
}

btnBack.setOnClickListener {
goLogin()
}
}

private fun register() {

RetrofitClient.instance.userRegister(
username = username,
password = password,
konfirmasi = konfirmasi)
.enqueue(object:
Callback<ArrayList<RegisterResponse>> {
override fun onResponse(
call:
Call<ArrayList<RegisterResponse>>,
response:
Response<ArrayList<RegisterResponse>>
) {

}
73

override fun onFailure(call:


Call<ArrayList<RegisterResponse>>, t: Throwable) {
if(username != "" && password != ""){
if(password.equals(konfirmasi)){

Toast.makeText(applicationContext, "Pendaftaran akun


berhasil", Toast.LENGTH_SHORT).show()
goLogin()
}
else{

Toast.makeText(applicationContext, "Konfirmasi Password


Salah", Toast.LENGTH_SHORT).show()
}
}
else{
etPasssword.text = null
etKonfirmasi.text = null
Toast.makeText(applicationContext,
"Username atau Password tidak boleh kosong",
Toast.LENGTH_SHORT).show()
}

})
}

private fun goLogin(){


val intent = Intent(this,
LoginActivity::class.java)
startActivity(intent)
}

package com.alfari.lobby

data class LoginResponse(


val username: String,
val password: String,
val nama: String,
val gender: String,
val bio: String,
val photo: String,
val dibuat: String,
val blokir: String,
val akses: String
)
74

package com.alfari.lobby

data class RegisterResponse(


val username: String?,
val password: String?,
val konfirmasi: String?,
val response: String?,
val result: String?
)

package com.alfari.lobby

import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory

object RetrofitClient {

private const val BASE_URL =


"https://lobbyforum.000webhostapp.com/api/"

val instance: Api by lazy{


val retrofit = Retrofit.Builder()
.baseUrl(BASE_URL)

.addConverterFactory(GsonConverterFactory.create())
.build()

retrofit.create(Api::class.java)
}

package com.alfari.lobby

import android.annotation.SuppressLint
import android.content.Intent
import android.os.Build

import android.os.Bundle
import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.annotation.RequiresApi
import androidx.appcompat.app.AppCompatActivity
import
com.google.android.material.bottomnavigation.BottomNavigat
ionView

private lateinit var alfariWebview : WebView


75

lateinit var data:String


lateinit var bottomNavigation : BottomNavigationView
lateinit var url:String

class MainActivity : AppCompatActivity() {


@RequiresApi(Build.VERSION_CODES.O)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
alfariWebview = findViewById(R.id.alfariWebview)
bottomNavigation =
findViewById(R.id.bottom_navigation)

url = "https://lobbyforum.000webhostapp.com/"
data =
intent.getStringExtra("loginUsername").toString()
alfari_webview_setup(url + "index.php?username=" +
data)

bottomNavigation.setOnNavigationItemReselectedListener {
when(it.itemId){
R.id.ic_home -> alfari_webview_setup(url +
"index.php?username=" + data)
R.id.ic_user -> alfari_webview_setup(url +
"profile.php?id=" + data)
R.id.ic_logout -> goLogin()
}
}
}

@RequiresApi(Build.VERSION_CODES.O)
@SuppressLint("SetJavaScriptEnabled")
private fun alfari_webview_setup(url: String){
alfariWebview.webViewClient = WebViewClient()
alfariWebview.apply{
loadUrl(url)
settings.javaScriptEnabled = true
settings.safeBrowsingEnabled = true
}
}

override fun onBackPressed() {


if(alfariWebview.canGoBack())
alfariWebview.goBack()
else
super.onBackPressed()
}

private fun goLogin(){


76

val intent = Intent(this,


LoginActivity::class.java)
startActivity(intent)
}
}

Query Database
CREATE DATABASE db_lobby;

CREATE TABLE account(username VARCHAR(50) PRIMARY


KEY,PASSWORD VARCHAR(100) NOT NULL,nama VARCHAR(100) NOT
NULL, gender ENUM('Laki-Laki','Perempuan'),bio
VARCHAR(250),photo VARCHAR(1000),dibuat DATE,akses
ENUM('admin','user','blokir'));

CREATE TABLE kategori(id INT PRIMARY KEY


AUTO_INCREMENT,nama_kategori VARCHAR(50) NOT NULL, warna
VARCHAR(10) NOT NULL);

CREATE TABLE komentar(id INT PRIMARY KEY,id_post INT NOT


NULL,username VARCHAR(50) NOT NULL,komentar VARCHAR(1000)
NOT NULL, waktu DATETIME);

CREATE TABLE post(id INT PRIMARY KEY AUTO_INCREMENT,


username VARCHAR(50),waktu DATETIME, konten
VARCHAR(1000),kategori VARCHAR(50),judul VARCHAR(50));

CREATE TABLE like_unlike(id INT AUTO_INCREMENT PRIMARY


KEY,username TEXT NOT NULL,id_post INT NOT NULL, waktu
DATETIME NOT NULL);

CREATE TABLE notifikasi(id VARCHAR(100) PRIMARY


KEY,username TEXT NOT NULL,notif TEXT NOT NULL,sumber TEXT
NOT NULL,id_post INT NOT NULL, waktu DATETIME NOT
NULL,dibaca ENUM('Ya','Tidak') NOT NULL);

CREATE TABLE dilihat(id VARCHAR(100) PRIMARY KEY,id_post


INT NOT NULL,sumber TEXT NOT NULL,waktu DATETIME);

Script Menambah Kategori


if (isset($_POST["btnTambah"])) {
$nama = $_POST["nama_kategori"];
$warna = $_POST["warna"];
$add = mysqli_query($conn, "INSERT INTO kategori
VALUES(NULL,'$nama','$warna')");
}
77

Script Mengubah Kategori


if (isset($_POST["btnEdit" . $data['id']])) {
$id = $_POST["id_kategori"];
$nama = $_POST["nama_kategori"];
$warna = $_POST["warna"];

$edit = mysqli_query($conn, "UPDATE kategori SET


nama_kategori = '$nama',warna = '$warna' WHERE id =
'$id'");
}

Script Menghapus Kategori


$id = $_GET['id'];
mysqli_query($conn, "DELETE FROM kategori WHERE id =
'$id'");

Script Menghapus Kategori


$id = $_GET['id'];
mysqli_query($conn, "UPDATE account SET akses = 'blokir',
blokir = NOW() WHERE username = '$id'");

Anda mungkin juga menyukai