Farhan Arif
5
Comments
Oktober 31, 2025
Dalam pengembangan aplikasi absensi
karyawan berbasis web menggunakan PHP, salah satu permasalahan yang sering
muncul adalah ketika karyawan dapat melakukan absen keluar tanpa terlebih
dahulu melakukan absen masuk. Masalah ini bisa menyebabkan data
kehadiran menjadi tidak valid. Sistem seolah mencatat bahwa karyawan sudah
hadir, padahal tidak pernah melakukan absen masuk pada hari tersebut.
Penyebab utama masalah ini adalah
tidak adanya pengecekan data absensi sebelumnya sebelum melakukan proses absen
keluar.Jika kode langsung menyimpan data absen keluar tanpa memastikan ada
catatan absen masuk, maka sistem tidak dapat membedakan mana karyawan yang
benar-benar hadir dan mana yang belum absen.
Studi Kasus dari Proyek Absensi
Dalam proyek aplikasi absensi,
potongan kode berikut digunakan untuk memproses absen keluar:
1. Cek
data absensi hari ini
Jika
data $hadir tidak ditemukan, maka sistem akan menganggap bahwa karyawan belum
melakukan absen masuk. Dalam kasus ini, sistem akan menolak proses absen keluar
dan menampilkan pesan kesalahan:

Dengan
validasi sederhana ini, aplikasi dapat mencegah karyawan melakukan absen keluar
tanpa absen masuk terlebih dahulu.
2. Tambahkan validasi sebelum menyimpan absensi
keluar
Jika
data $hadir tidak ditemukan, karyawan dianggap belum absen masuk:

Kode
di atas menambahkan logika pengecekan terhadap variabel $hadir.
~ Jika
data $hadir ditemukan, berarti karyawan sudah melakukan absen masuk, sehingga
sistem dapat melanjutkan proses absen keluar.
~ Jika
data $hadir tidak ditemukan, sistem menolak permintaan dan menampilkan pesan
“Anda belum absen masuk!”.
Dengan
demikian, sistem dapat memastikan urutan proses absensi berjalan dengan benar,
yaitu absen masuk terlebih dahulu, baru absen keluar.
Setelah
dilakukan penerapan validasi ini, sistem berhasil mencegah kesalahan absensi di
mana karyawan dapat langsung melakukan absen keluar tanpa absen masuk terlebih
dahulu. Selain itu, data kehadiran menjadi lebih akurat karena setiap proses absensi
kini memiliki alur yang logis dan berurutan.Penerapan
logika ini juga memberikan pengalaman yang lebih jelas bagi pengguna.Karyawan yang mencoba absen keluar tanpa data masuk akan menerima pesan
peringatan yang menjelaskan alasan penolakan, sehingga mereka memahami langkah
yang harus dilakukan terlebih dahulu.