223
h2Anda telah mengikuti tes ini.h2
h5Untuk infoketerangan lebih lanjut, silahkan hubungi guru atau petugas tes.h5
center div
div class=modal-footer center
a data-dismiss=modal
class=btn btn-success btn-largeOKa center
div div
script type=textjavascript function infojs{
.modal.modalshow; };
script ?php
pesan = ; query = SELECT FROM un_cbt.un_daftar_tes JOIN
un_cbt.un_grup_peserta USINGkd_grup
JOIN un_cbt.un_peserta USINGkd_grup
where tes_status=1 and kd_grup={_SESSION[kdgrup]} and kd_peserta={_SESSION[kdpeserta]};
result = mysql_queryquery; _SESSION[kd_judul_tes] = data[kd_judul_tes];
?
c. File tes.php
?php mysql_querySELECT
FROM un_cbt.un_daftar_tes
JOIN un_cbt.un_grup_peserta
USINGkd_grup JOIN un_cbt.un_peserta USINGkd_grup where
kd_grup={_SESSION[kdgrup]} and
kd_peserta={_SESSION[kdpeserta]}; query=mysql_querySELECT
FROM un_cbt.un_daftar_tes where kd_judul_tes={kd_judul_tes};
echo kd_judul_tes; data = mysql_fetch_arrayquery;
_SESSION[kd_paket_soal] =
data[kd_paket_soal]; _SESSION[kd_judul_tes] = kd_judul_tes;
_SESSION[durasi] = data[durasi]; ?
span id=soal div class=hero-unit
h2?php echo nama_tes ?h2 --pAnda akan mulai mengikuti tes.brp--
bPETUNJUKbbr 1.
Berdoalah sebelum
memulai mengerjakan soal.br
2. Kerjakan soal dengan jujur.br 3. Pilih salah satu jawaban yang menurut
Saudara benar.br 4. Jawab seluruh soal sebelum waktu tes
habis.br 5. Tekan tombol bjawabb setelah
semua soal dikerjakan.br 6. Apabila terdapat pertanyaan dan
instruksi yang belum jelas, silahkan tanyakan pada guru atau petugas.br
pSilahkan klik tombol bMulai Tesb untuk memulai tes.p
p a
href=_ onclick=mulai?php
echo kd_judul_tes ? class=btn btn-primary btn-large
Mulai Tes a
a href=?page=ikuttes
class=btn btn-danger btn-large Kembali
a p
div span
script type=textjavascript function mulaikd_judul_tes{
membuat relasi tabel peserta ke tabel daftar tes pada tabel tes
.gethandlerajax_handler.php?ajax=kdteskd_judul_tes=+k d_judul_tes, function {
menampilkan soal .gethandlerajax_handler.php?ajax=ambilsoal,
functionsoal { soal.htmlsoal;
};
}; }
script ?php
kd_judul_tes = _GET[kd]; query = SELECT FROM un_tes JOIN un_peserta
USINGkd_peserta join un_daftar_tes USINGkd_judul_tes WHERE kd_judul_tes={_GET[kd]} group by kd_peserta;
result = mysql_queryquery; row = mysql_fetch_arrayresult;
nama_tes = row[judul]; ?
d. File handlerajaxhandler.php
?php session_start;
include ..database.php; Untuk menangani permintaan ajax untuk tes peserta
handler ketika peserta memulai tes ketika memulai tes maka kode tes akan dihasilkan
if isset_GET[ajax] _GET[ajax] == kdtes { kdpeserta = _SESSION[kdpeserta];
result = mysql_queryINSERT INTO un_tes kd_judul_tes, kd_peserta
VALUES {_GET[kd_judul_tes]},{kdpeserta};
kdtes = mysql_insert_id; _SESSION[kd_tes] = kdtes;
echo mysql_errno; }
if isset_GET[ajax] _GET[ajax] == ambilsoal {
echo _SESSION[kd_paket_soal];
224
mengambil soal dari database query = SELECT FROM un_cbt.un_soal JOIN
un_cbt.un_daftar_tes USINGkd_paket_soal
join un_cbt.un_peserta USINGkd_grup
where kd_paket_soal={_SESSION[kd_paket_soal]}
and kd_peserta={_SESSION[kdpeserta]}
and kd_judul_tes={_SESSION[kd_judul_tes]}
ORDER BY
RAND; result= mysql_queryquery;
jum_soal = mysql_num_rowsresult; per_page = 1;
page_awal = page_now = 1; page_akhir = ceiljum_soal per_page;
page = 1; menampilkan soal
no=0; include ..soal.php;
} if isset_GET[ajax] _GET[ajax] == simpanjawaban {
echo pre. print_r_GET, 1 .pre; proses parsing data untuk diinsert
data_to_insert = array; foreach
_GET as key = get { if key == ajax {
continue; }
if substrkey,0,6==answer {
no = substrkey,6; data_to_insert[no][answer] = get;
} if
substrkey,0,13==kd_nomor_soal{ no = substrkey,13;
data_to_insert[no][kd_soal] = get; }
} echo
answer pertama
. data_to_insert[1][answer];
echo br; echo
kode soal
pertama .
data_to_insert[1][kd_soal]; proses menentukan skor
for i=1; i=no ;i++ {
echo data_to_insert[i][answer]; echo data_to_insert[i][kd_soal];
mengubah data array ke data string untuk membuat seleksi pengambilan soal yang cocok
kd_soal_jawaban =
data_to_insert[i][kd_soal]; mengambil soal yang mau dicocokkan
query =
SELECT FROM
un_cbt.un_soal JOIN
un_cbt.un_daftar_tes USINGkd_paket_soal join un_cbt.un_peserta USINGkd_grup
where kd_paket_soal={_SESSION[kd_paket_soal]}
and kd_peserta={_SESSION[kdpeserta]}
and kd_judul_tes={_SESSION[kd_judul_tes]}
and kd_soal=kd_soal_jawaban; result= mysql_queryquery;
datasoal=mysql_fetch_arrayresult; menyeleksi kunci soal dengan jawaban
siswa kemudian memberi skor if
data_to_insert[i][answer]==datasoal[kunci_soal] {
data_to_insert[i][skor_jawaban]=1; } else {
data_to_insert[i][skor_jawaban]=0; }
} nilai=0;
proses menyimpan data for i=1; i=no ;i++
{ mengubah data array ke data string
untuk diinput ke database kd_soal_jawaban
= data_to_insert[i][kd_soal];
jawaban =
data_to_insert[i][answer]; skor_jawaban
= data_to_insert[i][skor_jawaban];
echo _SESSION[kd_tes]; mysql_queryINSERT
INTO un_cbt.un_detail_tes kd_tes, kd_soal, jawaban, skor_jawaban
VALUES{_SESSION[kd_tes]},kd_soal_jawaban ,jawaban,skor_jawaban;
nilai=nilai+skor_jawaban; }
nilaiakhir=nilai100no; proses memasukkan nilai akhir ke database
mysql_queryUPDATE un_cbt.un_tes
SET nilai=nilaiakhir WHERE kd_tes= {_SESSION[kd_tes]};
tampilan setelah selesai tes include sukses_simpan_jawaban.php;
} ?
e. File soal.php