Aplikasi sederhana untuk:
- Admin: CRUD mapel + akun guru (username/password), import CSV, dan ganti password admin.
- Guru/Mapel: login dan upload 4 file wajib (replace jika upload ulang), lihat viewer status file.
- Publik: halaman rekapan upload dengan tanda centang per jenis file + paging & pencarian.
- PHP Native (tanpa framework)
- MySQL/MariaDB
- Bootstrap 5 (tema biru)
- Cocok untuk testing di Laragon
public/: halaman publik (rekapan)auth/: login/logoutadmin/: menu adminguru/: menu guru (upload)config/: konfigurasihelpers/: fungsi bantupartials/: header/footeruploads/: hasil upload (buat otomatis, pastikan writable)
- Copy folder ini ke
C:\laragon\www\soal-upload-php(atau folder www Anda). - Buat database misalnya
soal_upload. - Import schema:
database.sql - Atur koneksi DB di:
config/config.php - Jalankan di browser:
- Publik:
http://localhost/soal-upload-php/public/ - Login:
http://localhost/soal-upload-php/auth/login.php
- Publik:
- Username:
admin - Password:
admin123
Upload file .csv dengan header berikut:
mapel,username,password
Matematika,mtk,mtk123
Bahasa Indonesia,bind,bind123Catatan:
- Import akan memastikan 1 akun guru per mapel (akun akan dibuat/diupdate).
- Password disimpan dengan
password_hash().
- Hanya menerima:
.doc,.docx,.xls,.xlsx - Setiap mapel memiliki 4 jenis file:
- Soal Paket A
- Soal Paket B
- Kunci Paket A
- Kunci Paket B
- Upload ulang untuk jenis yang sama akan menggantikan file lama.
- Nama file otomatis menjadi:
Nama Mapel - Jenis File.ext - File disimpan di
uploads/<mapel_id>/
- Validasi ekstensi + MIME (best effort)
- Nama file disanitasi (aman untuk Windows)
- Folder upload dibuat otomatis