Tuesday, May 1, 2018

[PWEB] PHP + MySQL

<meta>Mungkin post pertama dalam PWEB Edition</meta>
Kali ini saya akan sedikit mengulas tentang sebuah tugas PHP dan MySQL yaitu membuat sebuah form pendaftaran calon siswa baru yang mempunyai fitur tambah, edit dan hapus.
Referensi yang digunakan: https://www.petanikode.com/tutorial-php-mysql

Teknologi yang Digunakan

Apache2 Web Server 2.4.18 on Linux
PHP 7.0.28
MySQL Server Community 5.7.22

Database

Pertama kita mempersiapkan database yang akan kita gunakan untuk menyimpan data calon siswa. Berikut syntax DDL dan inisialisasi data dummy pertama pada database.
syntax ddl dan insert data dummy

Web Utama

Hal selanjutnya yang dipersiapkan adalah web utamanya agar user dapat berinteraksi dengan mudah dengan database. Berikut ini tampilan web tersebut.
tampilan halaman utama
tampilan "Tampilkan Pendaftar"

Pendaftaran Baru

Berikut ini tampilan formulir pendaftaran siswa baru:
tampilan form pendaftaran
tampilan home setelah pendaftaran berhasil
tampilan data setelah pendaftaran

Edit data

Form edit data dapat diakses dengan meng-klik Edit pada kolom Tindakan.
kita akan mengedit data milik Elsi
tampilan form edit
data Elsi berhasil diedit

Delete data

Delete data dapat dilakukan dengan mengklik Hapus pada kolom Tindakan.
kita akan menghapus data milik Mujihad
data Mujihad telah terhapus

Sekian dan terima kasih.


Thursday, December 14, 2017

DB Kursus - PBO

Program ini adalah sebuah program yang dapat membaca data ataupun menulis data ke dalam sebuah database 'kursus' yang sebelumnya telah di generate. DBMS yang digunakan di sini adalah MySQL, salah satu DBMS yang memiliki versi gratis dan cukup mudah digunakan. Untuk sementara ini database masih berjalan di localhost sehingga aplikasi ini masih bersifat offline. Program ini menggunakan interface GUI yaitu javax.swing untuk menjembatani user dan database kursus. Program ini masih berupa prototype dan terkadang cukup membingungkan.

DBLogin.java


DBInsertData.java


DBUserReport.java


DBOverallReport.java


DBGenerateReport.java

Program ini dibuat dengan IDE NetBeans. Beberapa class GUI ada yang sepenuhnya di-coding manual (DBLogin.java), beberapa ada yang GUI-nya semi-generated (hanya layoutnya yaitu DBInsertData.java dan DBUserReport.java) dan ada yang GUI-nya full generated menggunakan Swing Designer yang ada di NetBeans (DBOverallReport.java dan DBGenerateReport.java

Penerapan konsep-konsep object oriented programming di sini seperti penggunaan object dan classes,  encapsulation dan inheritance.

Berikut ini beberapa screenshot dari program:
Tampilan awal dari program
Tampilan saat mengisikan password
Tampilan saat login gagal
Tampilan saat login berhasil
Tampilan ketika akan menginputkan data
Tampilan saat tombol Add Data diklik
 Tampilan pada form pencarian pada guest mode,ketika data tidak ditemukan
Tampilan pada guest mode ketika data ditemukan
Tampilan ketika Overall Report diklik

Thursday, December 7, 2017

[PBO] Game Pong

Salah satu game retro yang terkenal pada tahun 70an. Dibuat ulang dengan menggunakan library java awt. Berikut ini source sode dari game tersebut:

Phong.java


Ball.java


Paddle.java


Renderer.java


Output Program




 



Thursday, October 26, 2017

[UTS] - e-toll

Studi kasus pada mesin e-toll
Rancangan class:

Account.java


CardReader.java


Database.java


Screen.java


TicketPrinter.java


Transaction.java


eToll.java


eTollTest.java


Output




PBO 6 - Mesin ATM

Account.java


Atm.java


AtmCaseStudy.java


BalanceInquiry.java


BankDatabase.java


CashDispenser.java


Deposit.java


DepositSlot.java


Keypad.java


Screen.java


Transaction.java


Withdrawal.java


Output Program


Thursday, October 5, 2017

PBO 5

NumberDisplay.java


ClockDisplay.java


TestClockDisplay.java


Relation


Output


Thursday, September 14, 2017

PBO - Tugas 1

Berikut ini dokumentasi dari Tugas 1

Time1.java

File ini berisikan sebuah class yang berisi 3 variabel yaitu Time1.hour, Time1.minute, Time1.second yang semua bertipe integer. Class ini mempunyasi sebuah method untuk mengatur waktu yang kita inginkan. Method ini akan men-throw sebuah exception jika sebuah nilai yang tidak valid dimasukkan. Selain itu ada dua method lainnya yaitu ToString() dan ToUniversalString(). Keduanya akan mereturn sebuah string yang merepresentasikan content dari class tersebut. Perbedaannya ToString() menampilkan waktu dalam notasi 12 jam sedangkan ToUniversalString() menampilkan waktu dalam notasi 24 jam.

Time1Test.java

Time1Test.java merupakan sebuah file yang berisi class utama yaitu class yang merisi metod main(). Class ini berfungsi untuk menguji apakah class Time1 sudah bekerja dengan baik atau tidak. Pengujian yang dilakukan di sini yaitu:
  •  Pengujian output dari method ToUniversalString() dan ToString saat method SetTime() belum dipanggil
  • Pengujian output dari method ToUniversalString() dan ToString saat method SetTime() dipanggil dengan suatu nilai yang valid
  • Pengujian output dari method ToUniversalString() dan ToString saat method SetTime() dipanggil dengan suatu nilai yang invalid
  • Pengujian output dari method ToUniversalString() dan ToString setelah method SetTime() dipanggil dengan suatu nilai yang invalid

Berikut ini output dari program tersebut pada console NetBeans


MemberAccessTest.java

MemberAccessTest.java menguji member access dari setiap member di class Time1.java. Karena time.hour, time.minute dan time.second bersifat private, maka member-member e=tersebut tidak akan bisa diakses di luar class itu sendiri. Sehingga akan terjadi compiler error saat MemberAccessTest.java dicompile. Berikut output dari console NetBeans:

Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - hour has private access in Tugas1.Time1
    at Tugas1.MemberAccessTest.main(MemberAccessTest.java:42)
C:\Users\acer\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 44 seconds)


ThisTest.java

Dokumentasi menyusul

this.toUniversalString(): 15:30:19
     toUniversalString(): 15:30:19
BUILD SUCCESSFUL (total time: 5 seconds)


Constructor Overloading

Time2.java

Dokumentasi menyusul


Time2Test.java

Dokumentasi menyusul

Constructed with:
t1: all arguments defaulted
 00:00:00
 12:00:00 AM
t2: hour specified; minute and second defaulted
 02:00:00
 2:00:00 AM
t3: hour and minute specified; second defaulted
 21:34:00
 9:34:00 PM
t4: hour, minute and second specified
 12:25:42
 12:25:42 PM
t5: Time2 object t4 specified
 12:25:42
 12:25:42 PM

Exception while initializing t6: hour must be 0-23
BUILD SUCCESSFUL (total time: 5 seconds)


[PWEB] PHP + MySQL

<meta>Mungkin post pertama dalam PWEB Edition</meta> Kali ini saya akan sedikit mengulas tentang sebuah tugas PHP dan MySQL yai...