Membangun Aplikasi Dinamis Berbasis Backend PHP & MySQL
Anda diminta untuk membangun sebuah aplikasi web satu halaman (atau berbasis modular) yang berfungsi sebagai sistem pencatatan keuangan (arus kas) pribadi. Aplikasi ini harus mampu menyimpan data secara permanen ke dalam database, menampilkan ringkasan saldo, menyaring data berdasarkan waktu, serta menghapus data dengan aman.
| Nama Kolom | Tipe Data | Atribut / Keterangan |
|---|---|---|
| id | INT | Primary Key, Auto Increment |
| nama_transaksi | VARCHAR(100) | Not Null |
| jenis | ENUM('masuk', 'keluar') | Not Null |
| nominal | INT | Not Null |
| tanggal | DATE | Not Null |
SUM(): Total Masuk, Total Keluar, dan Saldo Akhir. Riwayat transaksi wajib diurutkan secara terbalik berdasarkan tanggal terbaru dan berformat Rupiah (Rp 50.000).
confirm()) sebelum query dijalankan.
Desain wajib rapi dan mudah dibaca (scannable). Berikan pembeda visual pada baris tabel: Latar belakang hijau muda untuk transaksi masuk, dan merah muda untuk transaksi keluar.
| No | Komponen Penilaian | Bobot | Target Waktu |
|---|---|---|---|
| 1 | Konfigurasi DB & koneksi.php |
10% | 15 Menit |
| 2 | Fitur Input & Validasi Server (Create) | 25% | 25 Menit |
| 3 | Tampilan Ringkasan Saldo & Tabel (Read) | 30% | 30 Menit |
| 4 | Fitur Filter Bulan & Tahun | 20% | 25 Menit |
| 5 | Fitur Hapus + Proteksi JavaScript (Delete) | 10% | 10 Menit |
| 6 | Kerapian UI & Ketepatan Warna Baris | 5% | 15 Menit |
| Total Akhir | 100% | 120 Menit | |
Untuk menghitung total uang masuk/keluar langsung dari MySQL, Anda dapat memanfaatkan fungsi agregat seperti contoh berikut:
SELECT SUM(nominal) AS total FROM transaksi WHERE jenis = 'masuk';
Setelah menyelesaikan seluruh fitur dan memastikan tidak ada bug, harap kumpulkan hasil pekerjaan Anda dengan ketentuan berikut:
.sql) ke akun GitHub Anda.