You are on page 1of 29

1

Web eLearning Multi User


Sistem Informasi
Pembelajaran Online berbasis
Web PHP dan MySQL
Berbasis Multi User, yaitu; hak akses untuk Admin
(pengelola website), hak ases guru (pengelola materi dan
soal mata pelajaran), hak akses siswa (hak ujian atau
latihan bersama-sama dalam satu waktu).

( Programmer & Penulis : Bunafit Nugroho )

Bunafit Nugroho , adalah Web Programmer paling cuuakep dan


imut, Pengajar Online di bunafitCamp.Com , penulis berbagai bahasa
Pemrograman, diantaranya VB, PHP dan JAVA NetBeans. CekiDot at
www.bunafit-komputer.com.

2
Adalah web dengan konsep sebagai bahan referensi/
contekan/ acuan belajar pemrograman, untuk
contekan proyek Tugas Akhir (TA), Skripsi, Kerja
Praktek atau Tesis bidang Informatika Komputer.

Biaya pesan Website eLearning (Promo) :


 Rp. 750.000,- versi Website siap pakai (sudah jadi)
 Rp. 1.250.000,- versi Website Kastem (Modifikasi)
 Rp. 1.750.000,- versi Website Kastem (Expert)
 Rp. 2.500.00,- versi Kastem Expert, dilengkapi SMS
Servis (Gammu SMS Gateway)

Biaya Belajar (Workshop), di Yogyakarta :


 Rp. 1.500.000,-/ peserta, hanya 2 peserta/ kelas
 Rp. 2.000.000,-/ peserta, Private khusus

Untuk mendapatkan No Rekening transfer, silahkan kirim


email ke:

Atau, kirim SMS ke nomor 0838 6716 1314 .


Contoh pesan SMS : "planetKode, minta No Rekening
pembayaran Sc PHP Web eLearning Multi User ". Kami
akan segera membalas.

3
ERD (Entity Reltaion Diagram) / Relasi Tabel

4
KONSEP E-LEARNING

eLearning v1 MU : Sistem Informas i Pembelajaran


Online berbasis Web PHP – MySQL . Web ini dibuat dengan
PHP MySQL versi XAMPP, juga dapat berjalan pada paket AppServ,
apache2Triad, dan lainnya. Web ini dapat dijalankan secara Intranet
(jaringan lokal) atau juga bisa di -online-kan pada web hosting (di-
Internet), atau pada komputer untuk belajar.

Berbentuk source code/ Script Web site lengkap yang langsung dapat
Anda gunakan untuk belajar , Anda dapat menjadikan Website eLearning
ini untuk acuan belajar Kerja Praktek (KP), acuan Tugas Akhir(TA),
untuk acuan Skripsi atau Tesis bidang Informatika dan Komputer, serta
dapat dipakai untuk contoh belajar pemrogramman.

Website eLearning ini dibangun dengan konsep multi pengguna (Multi


User), yaitu digunakan oleh; Admin, Guru dan Siswa.

# ADMIN
 Admin berhak menambah nama mata pelajaran baru, berhak
menambah daftar materi baru (meskipun materi adalah haknya
guru).
 Admin berhak untuk menambah data siswa baru. Data siswa
adalah data master siswa sekolah, yang nanti dipakai untuk validasi
saat ada siswa yang mendaftar sebagai peserta website eLearning.
 Admin berhak meng-Aprove (menyetujui) setiap siswa yang
mendaftar sebagai peserta eLearning. Jika data pendaftaran peserta
baru ada di dalam daftar siswa, maka peserta bisa di -Aprove.
 Admin berhak menambah daftar guru, serta mengkoneksikan ke
dalam mata pelajaran yang dia ampu. Satu mata pelajaran, bisa

5
diampu oleh beberapa guru, tapi setiap guru hanya berhak
mengampu satu mata pelajaran. Jika satu guru ingin mengampu
beberapa mata pelajaran, maka harus dibu atkan aku baru (atau
dicatat sebagai pengguna baru).
 Admin juga bisa menginput soal.

# GURU
 Guru berhak mengatur berapa jumlah sual yang akan dikeluarkan
pada tiap kali latihan ujian, serta berapa nilai persentase
kelulusannya (misalnya lulus jika betu 70 %).
 Guru bisa menambah materi baru, dalam materi ini ada data
(dokumen) berbentuk PDF/RTF/DOC yang bisa didownload oleh
siswa (peserta) yang sudah login. Tidak ada batasan, siapapun
yang sudah login bisa mendownload.
 Guru mengelola soal yang diujikan (mena mbah soal, mengubah,
dan menghapus soal). Tiap guru hanya berhak pada soal yang
sesuai dengan Mata Pelajaran masing -masing. Soal dari mata
pelajaran lain tidak akan tampil pada halaman guru.
 Guru bisa melihat semua daftar peserta (siswa) yang sudah
mengikuti latihan ujian mata pelajaran dia, dan guru juga bisa
melihat hasil ujian peserta ujiannya.
 Guru bisa membuat pengumuman (info), pengumuman bisa dilihat
oleh seluruh siswa (peserta).

# GURU
 Konsepnya web ini ada sistem anggota ( peserta). Untuk menjadi
peserta harus mendaftar telebih dahulu. Calon peserta yang boleh
mendaftar adalah siswa sekolah itu, jika tidak siswa sekolah tidak
diperbolehkan mendaftar (karna ada validasi No In duk di tabel
siswa).

6
 Jika peserta sudah mendaftar, harus menunggu konfirmasi dari
Admin. Jika disetujui (di-Aprove), maka peserta boleh login dan
mengakses hak-nya.
 Jika peserta (siswa) sudah login, maka peserta dapat mengambil
(download) materi tiap pelajaran yang ada di sana. Waktu dan
banyaknya materi yang download bebas, boleh semuanya dan
kapan saja, tidak harus ada tingkatan ujian di setiap level -nya.
 Setiap mata pelajaran yang ada, peserta boleh mengikuti test atau
latihan ujian kapanpun selama login. Satu hari diberikan
kesempatan satu kali ujian (untuk tiap pelajaran). Mis alnya; untuk
pelajaran matematika, peserta hanya diperbolehkan mencoba
mengikuti latihan ujian satu kali saja untuk hari ini, dan
selanjutnya boleh dicoba esok harinya. Begitu juga untuk pelajaran
yang lain.
 Peserta boleh mencoba ujian semua pelajaran yang ada, atau satu
persatu. Hasilnya akan langsung dapat dilihat.
 Soal yang diujikan akan tampil acak, jadi setiap peserta yang
mengikuti ujian berbarengan kemungkinan tidak akan sama urutan
soalnya, atau akan berbeda sama sekali.

Ujiannya diacak soal, jadi tergantung Admin-nya atau Guru yang


membagi jumlah soal. Kalo jumlah soalnya banyak, maka tiap peserta
yang ujian (mengerjakan soal) tidak akan dapat soal yang sama. Kalo
soal dikit, ya mungkin sama atau cuman tukar nomor urut aja. U jiannya
berbentuk pilihan ganda, pilihan jawaban : A, B, C, D, dan E.

7
# TABEL ADMIN

Tabel admin, tabel ini dipakai untuk menyimpan data login


administrator (pengguna utama sebagai pengelola).
User login : admin
Password : admin

8
# TABEL GURU

Tabel guru, tabel ini dipakai untuk menyimpan daftar guru yang
mengelola tiap mata pelajaran yang ada dalam website eLearning. Detail
guru dan akun login ada di tabel ini. Terhubung dengan tabel pelajaran,
sehingga satu akun guru hanya berhak mengelola satu mata pelajaran
saja, sedangkan nanti satu mata pelajaran masih mungkin dikelola oleh
guru yang berbeda.

User Guru 1 dartok


Password 1 dartok
User Guru 2 mardi
Password 2 mardi
User Guru 3 nazam
Password 3 nazam

* Catan: Untuk eLearning kampus (Universitas/ Sekolah


Tinggi), tabel guru dapat diganti dengan tabel dosen.

9
# TABEL SISWA

Tabel siswa, tabel ini dipakai sebagai master siswa. Semua daftar siswa
(mahasiswa) yang ada di sekolah disimpan pada tabel ini. Tabel ini
hanya sebagai master data saja, karna tidak akan dipakai dalam sistem
eLearning, kita hanya memakai data di dalam tabel ini untuk validasi
pendaftaran peserta website eLearning.

10
Pada saat pendaftaran peserta website eLearning, sebelum data pendaftar
disimpan, maka program akan memeriksa keberadaan n ama dan nomor
induk ke dalam tabel siswa ini. Jika nomor induk dan nama peserta baru
(pendaftar baru) tadi ada di dalam tabel siswa, maka valid, artinya dia
memang benar siswa dari sekolah yang bersangkutan. Jika tidak ada,
maka pendaftaran ditolak, karna bukan siswa sekolah bersangkutan.

* Catan: Untuk eLearning kampus (Universitas/ Sekolah Tinggi), tabel


siswa dapat diganti dengan tabel mahasiswa.

# TABEL PESERTA

11
Tabel peserta, tabel ini dipakai untuk menyimpan semua data anggota
atau peserta website eLearning. Seperti yang telah dijelaskan
sebelumnya, peserta yang terdaftar hanya siswa dari sekolah yang
bersangkutan. Jika saat mendaftar memasukkan nomor induk dan nama
siswa yang benar (ada di daftar siswa sekolah), maka pendaftaran sukses
atau disimpan dalam database.
Tiap peserta yang mendaftar boleh menyertakan data lengkap, disertai
dengan foto pribadinya.
Dalam tabel peserta juga ada data akun login, dari akun inilah peserta
bisa login ke website dan mengikuti ujian latihan yang ada di sana, serta
dapat men-download materi yang diujikan.

Sesaat pertama kali peserta berhasil mendaftar, maka statusaktif-nya


akan diset NO, artinya peserta belum dapat login sebelum di -Aprove
oleh admin. Jika admin sudah meng -Aplrove, maka statusnya menjadi
YES, dan peserta bisa login.

12
# TABEL PELAJARAN

Tabel pelajaran, tabel ini dipakai untuk menyimpan daftar mata


pelajaran yang tersedia di dalam website eLearning. Administrator yang
berhak menambah ataupun mengganti nama mata pelajaran yang sudah
ada.
Tiap mata pelajaran boleh disetting berbeda, misalnya tiap ujian hanya
dikeluarkan sebanyak 10 soal saja, dengan skor tingkat kelulusan
minimal benar 70%, atau nilai yang lain, dan nilai ini akan ditentukan
oleh masing-masing guru yang mengampu.

Satu mata pelajaran memungkinkan dikelola (diampu) oleh bebearpa


guru yang berbeda, akan tetapi tiap guru hanya boleh mengampu satu
mata pelajaran saja.

13
# TABEL PELAJARAN_MATERI

Tabel materi, tabel ini dipakai untuk menyimpan data materi yang
diajarkan dari tiap mata pelajaran. Dalam tabel ini juga bisa dimasuki
data materi berupa dokumen Ms Word, Ms Excel, PDF dan lainnya. File
yang disimpan hanya berupa nama file saja, sedangkan file objek
dokumennya akan diletakkan pada folder fileMateri.

14
Tabel materi berhubungan dengan data mata pelajaran, sehingga yang
berhak mengelola isi materi adalah guru yang bersangkutan dengan mata
pelajaran. Guru boleh menambah materi baru, menghapus ataupun
mengganti materi yang sudah ada.

# TABEL SOAL

Tabel soal, tabel ini dipakai untuk menyimpan semua data soal yang
akan diujikan (dipakai untuk latihan ujian siswa/ peserta eLearning).
Soal dikelompokkan berdasarkan mata pelajaran.
Soal berupa pilihan ganda (opsi: A, B, C dan D). Soal berupa soal teks,
soal juga bisa disertai dengan gambar. Contoh:

Pada tiap soal, guru wajib mengisi kunci jawaban yang benar, data kunci
ini nanti akan menjadi patokan siswa saat memilih opsi soal yang

15
diujikan kepadanya. Jika saat ujian siswa memilih opsi yang sama
dengan kunci, maka jawaban sis wa benar dan mendapat nilai 1.

Di dalam tabel soal, daftar soal disimpan seperti biasa, tidak acak.
Proses pengacakan akan dilakukan nanti, saat siswa memilih mata
pelajaran yang akan diikuti ujiannya. Nanti, tiap siswa (peserta web
eLearning) akan mendapat urutan soal yang berbeda dengan temannya
yang saat itu juga mengikuti ujian.

# TABEL UJIAN

16
Satu peserta, misalnya peserta denngan nomor induk 10101 (UID: 001)
yang login, dapat mengikuti semua ujian dari mata pelajaran yang
dimilikinya. Misalnya peserta itu mengikuti 3 mata pelajaran yang ada,
maka dia akan langsung mendapat 3 nomor ujian berbeda, data nomor
ujian akan disimpan dalam tabel ujian.
Saat peserta (siswa peserta ujian) mengklik salah satu mata pelajaran
yang ditawarkan (diujikan), maka program otomatis akan membagi soal
untuk peserta tersebut. Status peserta ujian itu akan AKTIF, artinya
peserta belum selesai mengerjakan soal.

Jika peserta sudah selesai mengerjakan soal, klik tombol JAWAB, maka
otomatis status ujian dia adalah SELESAI, dan saat itu juga lembar soal
ujian ditutup.

17
# TABEL UJIAN_DETAIL

Perhatikan tabel ujian_detail di atas, tabel ini dipakai untuk mencatat


tiap soal hasil bagi acak yang diperolah peserta. Program akan mengacak
dengan perintan RAND (acak tak beratu ran), kemudian akan disimpan
sebagai soal milik peserta yang tadi mengikuti ujian mata pelajaran
pilihan dia.

Soal akan diacak, lalu akan diberikan nomor urut (no). Tiap peserta
mungkin akan mendapatkan beberapa kode soa l yang sama, akan tetapi
susunan (nomor urut soal)-nya pasti akan berbeda. Contoh:

18
Soal yang sudah dibagi otomatis memiliki nilai jawaban NOLL
(kosong), karna peserta belum mengerjakan. Jika sudah mengerjakan,
maka tiap jawaban yang dipilih akan disimpan pada kolom jawab. Data
pilihan yang ada di kolom jawab ini nanti akan dibandingkan dengan
kolom kunci yang ada di dalam tabel soal, sehingga hasil benar atau
salahnya akan didapat.

19
Teknik koding
dari Dreamweaver 8/ CSx

Terlihat file di sana.


 cPanel. Folder ini berisi file program untuk administrator,
atau pengelola situs web eLearning.
 cGuru. Folder ini berisi file program login guru, mengelola
materi, seting pelajaran dan soal.
 Db. Folder ini berisi master SQL database
 imgSoal. Folder ini dipakai untuk menyimpan gambar soal.

20
File program siswa_daftar.php, terlihat dari View Design
Dreamweaver 8/CSx

21
File program siswa_daftar.php, terlihat dari View Code
Dreamweaver 8/CSx

File program siswa_daftarsim.php, terlihat dari View Code


Dreamweaver 8/CSx

<?php
include_once "librari/inc.koneksidb.php";
include_once "librari/inc.librari.php";

if ($_GET['page']=="daftarsim") {
// PERIKSA NOMOR INDUK SISWA, APAKAH SISWA SEKOLAH
ATAU BUKAN
if (trim($_POST['txtNoInduk']) =="") {
$pesan[] = "Data Nomor Induk masih kosong";

22
}

// Cek pada tabel siswa


$sqlCekInduk = "SELECT * FROM siswa WHERE
noinduk='".$_POST['txtNoInduk']."'";
$qryCekInduk = mysql_query($sqlCekInduk, $koneksi);
$qtyCekInduk = mysql_num_rows($qryCekInduk);
if (! $qtyCekInduk == 1) {
$pesan[] = "<br>NOMOR INDUK
".$_POST['txtNoInduk']." BUKAN SISWA KAMI<br>";
}

// Cek pada tabel siswa


$sqlCekInduk2 = "SELECT * FROM peserta WHERE
noinduk='".$_POST['txtNoInduk']."'";
$qryCekInduk2 = mysql_query($sqlCekInduk2,
$koneksi);
$qtyCekInduk2 = mysql_num_rows($qry CekInduk2);
if ($qtyCekInduk2 >= 1) {
$pesan[] = "<br>NOMOR INDUK
<b>".$_POST['txtNoInduk']."</b> SUDAH TERDAFTAR <br>";
}

if (trim($_POST['txtNama']) =="") {
$pesan[] = "Data Nama masih kosong";
}
if (trim($_POST['rbKelamin']) =="") {
$pesan[] = "Data Kelamin belum dipilih";
$_POST['rbKelamin']=="P";
}
if (trim($_POST['txtAlamat']) =="") {
$pesan[] = "Data Alamat masih kosong";
}
if (trim($_POST['txtNoTelp']) =="" OR
! is_numeric(trim($_POST['txtNoTelp']))) {
$pesan[] = "Data No Telepon masih kosong, harus
angka";
$_POST['txtNoTelp'] = "";
} if (trim($_POST['txtEmail']) =="") {
$pesan[] = "Data Email masih kosong";

23
}
if (trim($_POST['txtUserId']) =="") {
$pesan[] = "Data User ID masih kosong";
}
if (trim($_POST['txtPass Id']) =="") {
$pesan[] = "Data Password masih kosong";
}

Terlihat dari View Code Dreamweaver 8/CSx

24
File program pada folder cGuru

File program pada folder cPanel (untuk halaman administrator,


atau pengelola web eLearning)

25
Setelah transfer, Source Code akan
dikirim ke Email Anda.
Biaya Workshop (Private) : Rp. 1.500.000, - di
Yogyakarta, Anda akan diajari teknik membuat
Program yang ada di daftar. (biaya sudah termasuk
Web Program). Minimal 2 peserta.
*** Jika kamu ingin memesan model W ebsite
eLearning Baru (Konsep dari Anda), kami akan
kenakan biaya minimal Rp. 1.500.000,- ***
Untuk mendapatkan No Rekening transfer, silahkan kirim email
seperti contoh. Atau, Live Order dengan meng irim SMS
SMS Live Order: 0838 6716 1314 .

Contoh pesan SMS "planetKode, minta No Rekening


pembayaran Sc Web eLearning Multi User ". Kami akan segera
membalas.

Jika Anda tertarik pada salah satu aplikasi, silahkan kirimkan ke


alamat email kami :

CONTOH EMAIL PEMESANAN


Tujuan Email
Subjek Surat Pesan Web eLearning Multi User
Pesan surat Anda di sini ...........
Identitas Pemesan :
Isi Surat
1. Nama Lengkap : ?
2. Mahasiswa Mana ? dan No HP aktif ??

26
www.bunafit-komputer.com
Redaksi Buku IT & Software Development

www.planetKode.Com

27
Koleksi Buku dari Penerbit GAVAMEDIA , Yogyakarta
Penulis : Bunafit Nugroho , dan Indah Indriyanna

Harga: Rp. 57.500,- Harga: Rp. 65.500,- Harga: Rp. 36.500,-

28
Harga: Rp. 67.500,- Harga: Rp. 66.500,- Harga: Rp. 49.500,-

Harga: Rp. 49.500,- Harga: Rp. 33.500,- Rp. 42.000,-

29