Closed lialubna closed 2 months ago
Untuk mengatuk jam masuk, masuk ke menu absensi siswa/guru lalu pilih menu edit.
Saat ini aplikasi belum memiliki fitur keterangan otomatis jika absen terlambat, kami akan mencatat permintaan Anda untuk menambahkan fitur tersebut. Kami akan mempertimbangkan permintaan ini untuk pengembangan dan pembaruan masa depan.
Mungkin jika absen siswa di buat per jam pelajaran sepertinya lebih efektif untuk menghindari siswa bolos di jam pelajaran tertentu 😅
Mungkin jika absen siswa di buat per jam pelajaran sepertinya lebih efektif untuk menghindari siswa bolos di jam pelajaran tertentu 😅
Memungkinkan, tapi akan banyak sistem yang dirombak karena membutuhkan banyak tabel tambahan. Mungkin bisa dibuatkan dulu gambaran sistemnya seperti apa, bisa pake diagram ERD.
private function view_berkali(){
$view=$this->M_absen->view_berkali_kali()->berapa_kali;
if ($view=="bisa") {
return "bisa";
}elseif($view=="tidak") {
return "tidak";
}else{
return "gagal";
}
}
mungkin bisa menambahkan contoler dan models seperti ini untuk absensi per jam pelajaran
function view_berkali_kali(){ return $this->db->get_where("buat",['id'=>1])->row(); } }
sebagai refrensi
Absensi Controllers
class Absensi extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->model('Absensi_model');
}
public function index() {
// Tampilkan halaman absensi siswa
$this->load->view('absensi');
}
public function absen_siswa() {
// Ambil data dari form
$id_siswa = $this->input->post('id_siswa');
$jam_pelajaran = $this->input->post('jam_pelajaran');
// Cek apakah qrcode valid dan belum absen
$is_valid = $this->Absensi_model->is_valid_qrcode($id_siswa, $jam_pelajaran);
if ($is_valid) {
// Tambahkan data absensi ke database
$this->Absensi_model->tambah_absensi($id_siswa, $jam_pelajaran);
// Tampilkan pesan berhasil absen
echo json_encode(['status' => 'success', 'message' => 'Absensi berhasil']);
} else {
// Tampilkan pesan qrcode tidak valid atau sudah absen
echo json_encode(['status' => 'error', 'message' => 'QRCode tidak valid atau anda sudah absen']);
}
}
}
Absensi_model
class Absensi_model extends CI_Model {
public function is_valid_qrcode($id_siswa, $jam_pelajaran) {
// Cek apakah qrcode valid
// Misalnya dengan membandingkan qrcode yang di-scan dengan data siswa dan jam pelajaran dari database
// Jika qrcode valid, cek apakah sudah absen pada jam pelajaran yang sama hari ini
$tanggal_absen = date('Y-m-d');
$this->db->where('id_siswa', $id_siswa);
$this->db->where('jam_pelajaran', $jam_pelajaran);
$this->db->where('tanggal_absen', $tanggal_absen);
$absen = $this->db->get('absensi_siswa')->row();
return (!$absen) ? true : false;
}
public function tambah_absensi($id_siswa, $jam_pelajaran) {
// Tambahkan data absensi ke database
$tanggal_absen = date('Y-m-d');
$data = array(
'id_siswa' => $id_siswa,
'jam_pelajaran' => $jam_pelajaran,
'tanggal_absen' => $tanggal_absen
);
$this->db->insert('absensi_siswa', $data);
}
}
absensi Views
<!DOCTYPE html>
bagaimana cara mengatur jam masuk ? sehingga keterangan otomatis jika ada siswa terlambat