• Tidak ada hasil yang ditemukan

Perancangan Aplikasi Ujian Online Berbasis Web

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Aplikasi Ujian Online Berbasis Web"

Copied!
82
0
0

Teks penuh

(1)

1. beranda.php

<div style="width:80%;margin:0 auto;font-size:110%">

<fieldset style="margin:0 auto;">

<legend>Info Singkat Tentang Aplikasi Dan

Pengembang</legend>

<div>

<p>

Aplikasi ujian online ini sengaja dibuat sesederhana

mungkin dengan tujuan mudah

digunakan oleh semua orang yang peduli terhadap

dunia pendidikan. Fitur utama dalam

aplikasi ini adalah sebagai berikut :</p>

<div class="judul">Untuk semua user :</div>

<ol>

<li>Melihat profil user</li>

<li>Mengganti password karena secara default

password = username / id dari user tersebut</li>

</ol>

<div class="judul">Untuk user admin :</div>

<ol>

<li>Menambah, mengedit dan menghapus mata pelajaran

yang diujikan</li>

<li>Menambah, mengedit dan menghapus daftar

(2)

<li>Menambah, mengedit dan menghapus siswa peserta

ujian</li>

<li>Melihat dan mendownload hasil ujian siswa dalam

bentuk spreadsheet ( excel )</li>

<li>Menghapus nilai siswa pada ujian tertentu, agar

siswa dapat mengulang ujian tersebut</li>

</ol>

<div class="judul">Untuk user siswa :</div>

<ol>

<li>Mengerjakan ujian yang tersedia</li>

<li>Melihat hasil ujian siswa bersangkutan</li>

</ol>

</div>

</fieldset>

</div>

<style>

div.judul{

text-decoration:underline;

font-weight:bolder;

font-size:115%;

}

(3)

2. buat_soal.php

<?php

include_once "include/koneksi.php"; $id_ujian = $_REQUEST["id_ujian"];

$ujian_exe = mysql_query("select nama_ujian,id_mp from ujian where id_ujian='".$id_ujian."'");

while($data = mysql_fetch_assoc($ujian_exe)){

$id_mp = $data['id_mp'];

$nama_ujian = $data['nama_ujian']; }

$soal_terakhir_exe = mysql_query("select id_soal from soal where id_ujian='".$id_ujian."' order by id_soal");

$jum_soal = mysql_num_rows($soal_terakhir_exe);

if($jum_soal > 0){ // cari id_soal terakhir $arr_temp = array();

while($data_soal = mysql_fetch_assoc($soal_terakhir_exe)){ $soal_temp = explode("_",$data_soal['id_soal']);

$nomer_soal = $soal_temp[1]; array_push($arr_temp,$nomer_soal); }

$soal_terakhir = max($arr_temp); }

(4)

$soal_terakhir = 0;

}

?>

<div class="kembali" onclick="kembali_lagi('<?php echo $id_mp ?>')">Kembali</div>

<script type="text/javascript">

function soal_kosong(id_ujian,soal_ke,jum_soal){ var jml_pil_jawaban = 5;

var nama_radio = "_"+id_ujian+"_"+soal_ke; var id_area = "_"+id_ujian+"_"+soal_ke;

var soal_kosong = "<div class='soal_ujian'>";

soal_kosong += "<div class='no_soal'>"+jum_soal+"</div>"; soal_kosong += "<div class='isi_soal'>";

soal_kosong += "<div class='div_editor'><span

onclick='hapus_kaji_editor(\""+id_area+"\")'>Preview</span><span onclick='replaceDiv(\""+id_area+"\")'>Text Editor</span></div>";

soal_kosong += "<div class='pertanyaan' id='"+id_area+"'>Tulis pertanyaan disini ...</div>";

soal_kosong += "<div style='clear:both'></div>";

for(var i = 0; i < jml_pil_jawaban;i++){

soal_kosong += "<div class='pilihan_jawaban'><input type='radio'

name='"+nama_radio+"' onclick='jawab(this)'/><textarea

(5)

onclick='popup_editor(this)'>Text Editor</label><label

onclick='preview(this)'>Preview</label></span></div>";

}

soal_kosong += "<div><span style='text-decoration:underline'>Kunci

Jawaban :</span>";

soal_kosong += "<div class='kunci_jawaban'></div>"; soal_kosong += "</div>";

soal_kosong += "<div style='margin:10px'><span class='tombol simpan' onclick='simpan(this)'>Simpan</span><span class='tombol reset'

onclick='reset(this)'>Reset</span></div>";

soal_kosong += "</div></div>"; return soal_kosong;

}

function tambah_soal(jumlah){

var jum_awal = "<?php echo $jum_soal ?>";

var soal_terakhir = "<?php echo $soal_terakhir ?>"; for(var i = 0; i < jumlah; i++){

var id_ujian = "<?php echo $id_ujian ?>";

var soal_ke = $(".soal_ujian").length + 1 + parseInt(soal_terakhir); var id_area = "_"+id_ujian+"_"+soal_ke;

var jum_soal_sekarang = $(".soal_ujian").length + 1 + parseInt(jum_awal);

(6)

replaceDiv(id_area);

// info untuk jumlah soal

$("#info_jml_soal").text(jum_soal_sekarang); }

}

function jawab(elm){

$(elm).parent().parent().find("div.kunci_jawaban").html($(elm).next().val( ));

}

function hapus_kunci_jawaban(elm){

$(elm).parent().parent().find("div.kunci_jawaban").empty();

}

function simpan(elm){

var isi_soal = $(elm).parents("div.isi_soal");

// pilihan jawaban dan kunci jawaban gak boleh kosong var pilihan_jawaban = new Array();

var error = 0;

$(isi_soal).find(".pilihan_jawaban>textarea").each(function(index){ if($(this).val() == ""){

$(this).css({"background":"#F4C3C2"});

error++; }

else{

(7)

// yang radio buttonnya dipilih berarti jawaban yang benar

var temp_status = 0; // 0 = false if($(this).prev().is(":checked")){

temp_status = 1;

}

var temp_jawaban = [$(this).val(),temp_status]; pilihan_jawaban.push(temp_jawaban);

} });

// ambil pertanyaan tapi destroy dulu ckeditor biar lebih mudah $(isi_soal).find(".div_editor span").eq(0).click();

var pertanyaan = $(isi_soal).find(".pertanyaan").eq(0).html();

var kunci_jawaban = $(isi_soal).find(".kunci_jawaban:first"); // jika sudah lengkap semua simpan ke database

if(error == 0 && $(kunci_jawaban).html() != ""){

// id_ujian diambil dari nama radio button pada pilihan jawaban var nama_radio = $(isi_soal).find(":radio").eq(0).attr("name");

// id untuk div informasi ketika menyimpan soal

var id_info = "info_"+nama_radio;

nama_radio = nama_radio.split("_"); var id_ujian = nama_radio['1'];

var id_soal = id_ujian+"_"+nama_radio['2'];

(8)

var posisi = $(isi_soal).parent().position();

var div_overlay = "<div

style='position:absolute;top:"+posisi.top+";left:"+posisi.left;

div_overlay

+=";width:"+lebar_div_soal+"px;height:"+tinggi_div_soal+";background:#F FFFFF;opacity:0.6' >";

div_overlay +="</div>";

div_overlay +="<div id='"+id_info+"'

style='position:absolute;border:1px solid #000000;font-weight:bolder";

div_overlay +=";background:#FFFFFF;padding:6px;border:1px

solid #00FF00;border-radius:3px;text-align:center' >";

div_overlay +="<span class='loading'>Sedang menyimpan ...</span></div>";

$(div_overlay).appendTo("#tempat_soal");

// letakkan informasi pada div id=id_info tepat ditengah soal var tinggi_info = $("#"+id_info).outerHeight();

var lebar_info = $("#"+id_info).outerWidth();

var atas = (parseInt(posisi.top) + (tinggi_div_soal - tinggi_info)/2)+"px"; var kiri = (lebar_div_soal - lebar_info)/2+"px";

$("#"+id_info).css({"top":atas,"left":kiri}); // simpan soal ke database

var data_kirim = [id_soal,id_ujian,pertanyaan,pilihan_jawaban];

var url = "simpan_soal.php";

(9)

if(hasil == 1){

// info sukses disimpan

$("#"+id_info).html("<span class='sukses'>Sudah disimpan ...</span>");

} else {

// tampilkan info coba simpan lagi

$("#"+id_info).html("<div>Gagal disimpan, mungkin

jaringan sedang down ...</div><div style='margin:0 auto;width:80px;border:2px solid green' class='tombol'

onclick=\"simpan_lagi(this,'"+id_info+"')\">Coba lagi</div>");

} })

} else{

alert("ada yang kosong atau belum memilih jawaban");

if($(kunci_jawaban).html() == ""){

$(kunci_jawaban).css({"background":"#F4C3C2"}); }

} }

function simpan_lagi(elm,info_soal){

(10)

var id_soal = info_soal.substr(5);

// hapus overlay

$(elm).parent().parent().remove(); // klik kembali tombol simpan

$("#"+id_soal).parent().find("div input.tombol").eq(0).click(); }

function reset(elm){

var isi_soal = $(elm).parents("div.isi_soal");

$(isi_soal).find("textarea").val("");

$(isi_soal).find(".kunci_jawaban").empty(); }

function preview(elm){

var data_textarea = $(elm).parent().prev().val(); // tutup semua layar monitor

var lebar_layar = $(window).width(); var tinggi_layar = $(document).height();

var overlay = "<div id='overlay' style=\"width:"+lebar_layar+"px;"; overlay +="position:absolute;top:0px;background:#FFFFFF;z- index:25\">";

overlay +="<div style=\"border:1px solid

#000000;width:65%;position:absolute;padding:10px\"><div id='popup_editor'>"+data_textarea+"</div>";

(11)

overlay +="<span class='tombol batal'

onclick='tutup_texteditor(this)'>Tutup</span></div></div></div>";

$(overlay).appendTo("#content");

var atas = (($(window).height() - $("#popup_editor").parent().height()) / 2)

+ $(window).scrollTop();

var kiri = (lebar_layar - $("#popup_editor").parent().width()) / 2 + $(window).scrollLeft();

$("#popup_editor").parent().css({"top":atas+"px","left":kiri+"px"}); // tinggi overlay disesuaikan

$("#overlay").css({"height":$(document).height()+"px"}); }

function popup_editor(elm){

// tambahkan elemen pemanggil dengan id pemanggil_editor $(elm).attr('id','pemanggil_editor');

var data_textarea = $(elm).parent().prev().val(); // tutup semua layar monitor

var lebar_layar = $(window).width();

var tinggi_layar = $(document).height();

var overlay = "<div id='overlay' style=\"width:"+lebar_layar+"px;"; overlay +="position:absolute;top:0px;background:#FFFFFF;z-

index:25\">";

overlay +="<div

style=\"width:65%;position:absolute;padding:10px\"><div

(12)

overlay +="<div style='margin-top:10px'><span class='tombol edit'

onclick='sisipke_textarea(this)'>Sisipkan</span>";

overlay +="<span class='tombol batal'

onclick='tutup_texteditor(this)'>Tutup</span></div></div></div>";

$(overlay).appendTo("#content");

replaceDiv("popup_editor");

var atas = (($(window).height() - $("#popup_editor").parent().height()) / 2)

+ $(window).scrollTop();

var kiri = (lebar_layar - $("#popup_editor").parent().width()) / 2 + $(window).scrollLeft();

$("#popup_editor").parent().css({"top":atas+"px","left":kiri+"px"}); // tinggi overlay disesuaikan

$("#overlay").css({"height":$(document).height()+"px"}); }

function sisipke_textarea(elm){

hapus_kaji_editor("popup_editor"); var data = $("#popup_editor").html();

// pemanggil editor

var pemanggil = $("#pemanggil_editor"); // textarea yang diisi data

$(pemanggil).parent().prev().val(data).change();

$(elm).parent().parent().parent().remove(); // hapus elemen id dari pemanggil

(13)

}

function tutup_texteditor(elm){

hapus_kaji_editor("popup_editor");

$(elm).parent().parent().parent().remove();

var pemanggil = $("#pemanggil_editor"); $(pemanggil).removeAttr("id");

}

function kembali_lagi(id_mp){

$("#content").html(info_loading).load("daftar_ujian.php?id_mp="+id_mp) ;

}

$(function(){

$("#t_soal").click(); })

</script>

<div id="t_soal" class="tombol tambah" onclick="tambah_soal(1)">

Soal

<span id="info_jml_soal">0</span> </div>

<div id="tempat_soal">

<div style="font-size:140%;font-style:italic;font-weight:bolder" class="tombol">Tambahkan soal untuk ujian <?php echo $nama_ujian

(14)

3. buat_ujian.php

<?php

include_once "include/koneksi.php"; $id_mp = $_REQUEST['id_mp'];

$nama_mp = mysql_result(mysql_query("select nama_mp from mapel where id_mp='".$id_mp."'"),0);

?>

<div> <fieldset>

<legend>Buat Ujian Baru Mata Pelajaran <?php echo $nama_mp

?></legend>

<div id="stylized" class="select-bar">

<form method="post" title="ujian" onsubmit="return simpan(this)" action="simpan_form.php">

<input type="hidden" name="id_mp" id="id_mp" value="<?php echo $id_mp ?>" class="isian"/>

<label>Nama Ujian

<span class="small">Nama ujian yang dilaksanakan</span>

</label>

<input type="text" name="nama_ujian" id="nama_ujian" class="isian"/> <span class="ket"></span>

<label >Tanggal Ujian

<span class="small">Format (2020-12-30)</span>

(15)

<input type="text" name="tanggal" id="tanggal" class="isian" />

<span class="ket"></span> <label >Waktu Ujian

<span class="small">Dalam menit</span>

</label>

<input type="text" name="waktu" id="waktu" class="isian" />

<span class="ket"></span> <label >Keterangan

<span class="small">Keterangan tambahan</span> </label>

<input type="text" name="keterangan" id="keterangan" class="isian" />

<span class="ket"></span>

<button type="submit" class="isian">Simpan</button> </form>

</div> </fieldset>

</div> <script>

function simpan(elm){

var inputan = $(elm).find(".isian");

var data = $(elm).serializeArray(); //berupa JSON object

var url = $(elm).attr('action');

var tabel = $(elm).attr('title');

(16)

if($(inputan).eq(i).val() == ""){

$(".ket").eq(i).html("harus diisi").css({"display":"block"});

$(inputan).eq(i).focus();

return false; }

else {

$(".ket").eq(i).empty().css({"display":"none"});

} }

// simpan ke database

$.post(url,{tbl:tabel,data:data},function(hasil){ if(hasil == 1){

var tampil = "<div>Ujian Sudah dibuat</div>"; $("#stylized").html(tampil);

}

else{

alert("gagal disimpan"); }

}) return false;

(17)

4. cek_ganti_pass.php

<?php

session_start();

include_once "include/koneksi.php"; $id_user = $_SESSION['nis_kj'];

$status = 0;

$pass_lama = md5($_REQUEST['pass_lama']);

$pass_baru = md5($_REQUEST['pass_baru']); // cek apakah password lama sudah benar

$pass_lama_db = mysql_result(mysql_query("select password from user

where id_user='".$id_user."'"),0);

if($pass_lama_db == $pass_lama){

$update_pass = mysql_query("update user set password='".$pass_baru."'

where id_user='".$id_user."'");

if($update_pass){ $status = 1; }

} else {

$status = "password lama gak sama, cek kembali ..."; }

(18)

5. daftar_mp.php

<div class="daftar_pelajaran">

<fieldset>

<legend>Pilih Mata Pelajaran</legend>

<form id="f_mp">

<input type="text" name="nama_mp" value="nama mata pelajaran"

class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<span id="simpan_mp" class="tombol tambah" onclick="simpan_mp(this)">Mata Pelajaran</span>

<span id="update_mp" style="display:none">

<span class="tombol simpan" onclick="update_mp(this)">Mata

Pelajaran</span>

<span class="tombol batal" onclick="batal_update()">Batal</span>

</span> </form> <?php

// ambil data mata pelajaran dari database

$mp_exe = mysql_query("select * from mapel");

$jml_mp = mysql_num_rows($mp_exe); if($jml_mp > 0){

?>

<ul>

<?php

(19)

$jml_ujian = mysql_result(mysql_query("select count(*)

from ujian where id_mp='".$data['id_mp']."'"),0); echo "<div><span

class='jml_ujian'>".$jml_ujian."</span>";

echo "<li>".$data['nama_mp']."</li>";

echo "<div onclick=\"lihat_ujian('".$data['id_mp']."')\" style='margin:10px'><span class='tombol tambah'>Ujian </span></div>";

echo "<div onclick=\"edit_mp(this,'".$data['id_mp']."')\" style='margin:10px'><span class='tombol edit'>Pelajaran</span></div>";

echo "<div onclick=\"hapus_mp(this,'".$data['id_mp']."')\"

style='margin:10px'><span class='tombol hapus'>Pelajaran</span></div>";

echo "</div>"; }

?> </ul>

<?php } else {

echo "Mata Pelajaran Belum Dibuat"; }

?>

(20)

</div>

<script>

function lihat_ujian(id_mp){

// load content dengan data dari daftar_ujian.php

$("#content").html(info_loading).load("daftar_ujian.php?id_mp="+id_mp) ;

}

function edit_mp(elm,id_mp){

var nama_mp = $(elm).parent().find("li").text(); $(".sedang_diedit").removeClass("sedang_diedit"); $(".telah_diedit").removeClass("telah_diedit");

$(elm).parent().addClass("sedang_diedit");

$("#f_mp input[name=nama_mp]").val(nama_mp); // sembunyikan tombol simpan

$("#simpan_mp").fadeOut(); $("#update_mp").fadeIn();

$("#update_mp").data("id_mp",id_mp); }

function batal_update(){

$(".sedang_diedit").removeClass("sedang_diedit"); $("#update_mp").fadeOut();

$("#simpan_mp").fadeIn(); $(".inputan").each(function(){

(21)

})

}

function update_mp(elm){ var errornya = 0;

$(".inputan").each(function(){ if($(this).val() == ""){

errornya++; $(this).focus(); return false;

} })

if(errornya == 0){

//simpan ke database

var data = $(elm).parent().parent().serializeArray();

var url = "update_data.php"; var tabel = "mapel";

data.unshift({"name":"id_mp","value":$("#update_mp").data("id_mp")}); $.post(url,{data:data,table:tabel},function(hasil){

if(hasil == 1){

// update data pada baris yang diedit

var div_mapel = $(".sedang_diedit");

(22)

// hapus class sedang diedit dan tambahkan kelas

telah diedit

$(div_mapel).removeClass("sedang_diedit").addClass("telah_diedit");

} else{

alert("gagal disimpan, mungkin data sudah ada \n atau koneksi bermasalah"+hasil);

} }) }

else {

alert("harus diisi semua...."); }

}

function simpan_mp(elm){

var nama_mp = $(elm).prev().val();

if(nama_mp != "" && nama_mp != "nama mata pelajaran"){ //simpan ke database

var data = $(elm).parent().serializeArray(); var url = "simpan_form.php";

var tabel = "mapel";

(23)

if(hasil == 1){

// reload content dengan halaman ini

$("#content").html(info_loading).load("daftar_mp.php");

} else{

alert("gagal disimpan, mungkin data sudah ada \n atau koneksi bermasalah");

}

}) }

else {

alert("harus diisi semua...."); }

}

function hapus_mp(elm,id_mp){

$(".sedang_diedit").removeClass("sedang_diedit");

$(elm).parent().addClass("sedang_diedit");

6. daftar_nilai_mp.php

<div class="daftar_pelajaran"> <fieldset>

(24)

// ambil data mata pelajaran dari database

$mp_exe = mysql_query("select * from mapel"); $jml_mp = mysql_num_rows($mp_exe);

if($jml_mp > 0){

?> <ul>

<?php

while($data = mysql_fetch_assoc($mp_exe)){

$jml_ujian = mysql_result(mysql_query("select count(*) from ujian where id_mp='".$data['id_mp']."'"),0);

echo "<div

onclick=\"lihat_nilai_ujian('".$data['id_mp']."')\"><span

class='jml_ujian'>".$jml_ujian."</span><li>".$data['nama_mp']."</li>";

echo "<div style='margin:10px'><span class='tombol edit'>Lihat Nilai</span></div>";

echo "</div>"; }

?> </ul>

<?php }

else {

(25)

}

?>

</fieldset>

</div> <script>

function lihat_nilai_ujian(id_mp){

// load content dengan data dari daftar_ujian.php

$("#content").html(info_loading).load("daftar_nilai_ujian.php?id_mp="+i

d_mp);

}

</script>

7. daftar_nilai_ujian.php

<?php

// current time

$mtime = microtime();

// split seconds and microseconds $mtime = explode(" ",$mtime); // create a single value for statr time

$mtime = $mtime[1] + $mtime[0]; $tstart = $mtime;

(26)

$nama_mp = mysql_result(mysql_query("select nama_mp from mapel where

id_mp='".$id_mp."'"),0);

?>

<div style="width:80%;margin:0 auto" class="daftar_pelajaran">

<fieldset>

<legend>Daftar Nilai Ujian Mata Pelajaran <?php echo ucwords($nama_mp) ?></legend>

<div style="margin-bottom:10px"><span onclick="download_ini()" class="tombol">Download as xls</span></div>

<?php

echo "<table class='listing' cellpadding='0' cellspacing='0' align='center'>"; //ambil data ujian pada id_mp ini sebagai header

echo "<thead>";

echo "<tr>";

echo "<th>No</th><th>NIS</th><th>Nama</th>"; $sql_head = "select id_ujian,nama_ujian from ujian where

id_mp='".$id_mp."'";

$sql_head_exe = mysql_query($sql_head); $head_id_ujian = array();

while($head = mysql_fetch_assoc($sql_head_exe)){ array_push($head_id_ujian,$head['id_ujian']);

echo "<th>".$head['nama_ujian']."</th>";

}

(27)

echo "</tr>"; echo "</thead>";

if(count($head_id_ujian) > 0){

// ambil semua data siswa peserta ujian $sql_siswa = "select nis,nama from siswa";

$sql_siswa_exe = mysql_query($sql_siswa); // simpan aja di array dulu biar gampang $data_siswa = array();

while($data = mysql_fetch_assoc($sql_siswa_exe)){ $data_siswa[$data['nis']]['nama'] = $data['nama'];

}

8. daftar_nilai_ujian_xls.php

<?php

include_once "include/koneksi.php";

$xlsfile = "Hasil_ujian_".date("d-m-Y").".xls"; header("Content-type: application/vnd.ms-excel");

header("Content-Disposition: attachment; filename=$xlsfile");

$id_mp = $_REQUEST['id_mp'];

$nama_mp = mysql_result(mysql_query("select nama_mp from mapel where

id_mp='".$id_mp."'"),0);

?>

(28)

<fieldset>

<legend>Daftar Nilai Ujian Mata Pelajaran <?php echo ucwords($nama_mp) ?></legend>

<?php

echo "<table class='listing' cellpadding='0' cellspacing='0'>"; //ambil data ujian pada id_mp ini sebagai header

echo "<tr>";

echo "<th>No</th><th>NIS</th><th>Nama</th>"; $sql_head = "select id_ujian,nama_ujian from ujian where

id_mp='".$id_mp."'";

$sql_head_exe = mysql_query($sql_head); $head_id_ujian = array();

while($head = mysql_fetch_assoc($sql_head_exe)){ array_push($head_id_ujian,$head['id_ujian']); echo "<th>".$head['nama_ujian']."</th>";

}

echo "<th>Rerata</th>"; echo "</tr>";

// ambil semua data siswa peserta ujian $sql_siswa = "select nis,nama from siswa"; $sql_siswa_exe = mysql_query($sql_siswa);

// simpan aja di array dulu biar gampang $data_siswa = array();

(29)

$data_siswa[$data['nis']]['nama'] = $data['nama'];

}

$sql_nilai = "select id_user,nilai.id_ujian,ifnull(nilai,\"--\") as nilai from nilai right join ujian on ujian.id_ujian=nilai.id_ujian and nilai.id_ujian in (select

id_ujian from ujian where id_mp='".$id_mp."') order by nilai.id_ujian,id_user";

$sql_nilai_exe = mysql_query($sql_nilai);

while($data = mysql_fetch_assoc($sql_nilai_exe)){

$data_siswa[$data['id_user']]['nilai'][$data['id_ujian']] = $data['nilai'];

}

// tampilkan dalam tabel $no = 1;

foreach($data_siswa as $id_siswa => $data_tampil){ echo "<tr>";

echo "<td>".$no++."</td>";

echo "<td>".$id_siswa."</td>";

echo "<td>".$data_tampil['nama']."</td>";

$temp_arr = array();

for($i = 0;$i < count($head_id_ujian); $i++){

if(isset($data_tampil['nilai'][$head_id_ujian[$i]])){

$nilainya = $data_tampil['nilai'][$head_id_ujian[$i]]; }

else $nilainya="---";

(30)

array_push($temp_arr,$nilainya);

}

echo "<td>".round(array_sum($temp_arr)/count($temp_arr))."</td>";

echo "</tr>"; }

echo "</table>"; ?>

9. daftar_siswa.php

<div style="width:80%;margin:0 auto">

<fieldset style="margin:0 auto">

<legend>Daftar Siswa Peserta Ujian </legend> <form id="f_siswa">

<input type="text" name="nis" value="nomer daftar" class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<input type="text" name="nama" value="nama siswa" class="inputan"

onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<input type="text" name="alamat" value="alamat siswa" class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<input type="text" name="agama" value="Islam" class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

(31)

<span id="update_siswa" style="display:none">

<span class="tombol simpan" onclick="update_siswa(this)">Siswa</span> <span class="tombol batal" onclick="batal_update()">Batal</span>

</span>

<span class='tombol info'></span> </form>

<?php

$sql="select * from siswa";

$sql_exe = mysql_query($sql); if(mysql_num_rows($sql_exe) > 0){

echo "<table class='listing' cellpadding='0' cellspacing='0'>";

// buat headernya kawan echo "<thead>";

echo "<tr>";

echo "<th>No</th>";

$jum_kolom = mysql_num_fields($sql_exe); for($i = 0; $i < $jum_kolom; $i++){

echo "<th>".mysql_field_name($sql_exe,$i)."</th>"; }

echo "<th>Aksi</th>";

echo "</tr>"; echo "</thead>";

echo "<tbody>";

(32)

while($data_baris = mysql_fetch_assoc($sql_exe)){

echo "<tr>";

echo "<td>".$no++."</td>"; foreach($data_baris as $data){

echo "<td>".$data."</td>"; }

echo "<td><span class='tombol edit'

onclick='edit_siswa(this)'>Siswa</span>&nbsp;<span class='tombol hapus' onclick='hapus_siswa(this,\"".$data_baris['nis']."\")'>Siswa</span></td>";

echo "</tr>"; }

echo "</tbody>";

echo "</table>"; }

else {

echo "Data masih kosong, diisi dulu ya ..."; }

?> </fieldset> </div>

<div class="kembali" onclick="kembali_lagi()">Kembali</div> <script >

function kembali_lagi(){

(33)

}

function simpan_siswa(elm){ var errornya = 0;

$(".inputan").each(function(){

if($(this).val() == ""){ errornya++;

$(this).focus(); return false;

} })

if(errornya == 0){

//simpan ke database

var data = $(elm).parent().serializeArray(); var url = "simpan_form.php";

var tabel = "siswa";

$.post(url,{data:data,tbl:tabel},function(hasil){

if(hasil == 1){

// reload content dengan halaman ini

// $("#content").html("").load("daftar_siswa.php");

var jml_baris = $("table.listing tr").length; var data_baru = "<td>"+jml_baris+"</td>";

$(".inputan").each(function(index){

(34)

data_baru +="<td><span class='tombol edit'

onclick='edit_siswa(this)'>Siswa</span>&nbsp;<span class='tombol hapus' onclick='hapus_siswa(this,\""+$(".inputan").eq(0).val()+"\")'>Siswa</span><

/td>";

var baris_baru = "<tr>"+data_baru+"</tr>"; $(baris_baru).insertAfter($("table.listing tr:last")); $(".info").html("sudah disimpan

...").fadeIn('slow').delay("2000").fadeOut(); }

else{

alert("gagal disimpan, mungkin data sudah ada \n atau koneksi bermasalah");

} }) }

else {

alert("harus diisi semua...."); }

}

10. daftar_ujian.php

<div style="margin:0 auto;width:85%">

(35)

<legend>Daftar Ujian Pada Mata Pelajaran <?php echo $nama_mp

?></legend>

<form id="f_ujian">

<input type="hidden" name="id_mp" id="id_mp" value="<?php echo

$id_mp ?>" class="inputan"/>

<input type="text" name="nama_ujian" id="nama_ujian" value="Nama

Ujian" class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<input type="text" name="tanggal" id="tanggal" value="Tanggal ujian"

class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<input type="text" name="waktu" id="waktu" value="Waktu (dalam menit)" class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<input type="text" name="keterangan" id="keterangan" size="60"

value="Keterangan" class="inputan" onfocus="bersihkan(this)" onblur="kembali_semula(this)"/>

<span class="tombol tambah" id="simpan_ujian" onclick="simpan_ujian(this)">Ujian</span>

<span id="update_ujian" style="display:none">

<span class="tombol simpan" onclick="update_ujian(this)">Ujian</span> <span class="tombol batal" onclick="batal_update()">Batal</span>

</span> </form>

(36)

<div class='nama_ujian'>Nama Ujian</div>

<div class='tanggal'>Tanggal</div> <div class='waktu'>Waktu</div> <div class='jml_soal'>Jml_Soal</div>

<div class='ket'>Keterangan</div> <div class='aksi'>Aksi</div>

</div> <?php

// tampilkan seluruh ujian pada mata pelajaran ini $sql = "select * from ujian where id_mp ='".$id_mp."'"; $sql_exe = mysql_query($sql);

$no = 1;

while($data = mysql_fetch_assoc($sql_exe)){ echo "<div class='daftar_ujian'>";

echo "<div class='no'>".$no++."</div>";

echo "<div class='nama_ujian'>".$data['nama_ujian']."</div>";

echo "<div class='tanggal'>".$data['tanggal']."</div>"; echo "<div class='waktu'>".$data['waktu']." Menit</div>";

$jml_soal = mysql_result(mysql_query("select count(*) from soal where

id_ujian='".$data['id_ujian']."'"),0);

echo "<div class='jml_soal'>".$jml_soal."</div>"; echo "<div class='ket'>".$data['keterangan']."</div>";

echo "<div class='aksi'><span class='tombol edit'

(37)

class='tombol tambah'

onclick='tambah_soal_ujian(\"".$data['id_ujian']."\")'>";

echo "Soal</span><span class='tombol edit'

onclick='edit_soal_ujian(\"".$data['id_ujian']."\")'>Soal</span><span

class='tombol hapus'

onclick='hapus_ujian(this,\"".$data['id_ujian']."\")'>Ujian</span></div>";

echo "</div>";

}

?>

</fieldset> </div>

<div class="kembali" onclick="kembali_daftar_mp()">Kembali</div> <script type="text/javascript">

function kembali_daftar_mp(){

$("#content").html(info_loading).load("daftar_mp.php"); }

function tambah_soal_ujian(id_ujian){

$("#content").html(info_loading).load("buat_soal.php?id_ujian="+id_ujia n);

}

function edit_soal_ujian(id_ujian){

$("#content").html(info_loading).load("edit_soal.php?id_ujian="+id_ujian

(38)

}

function simpan_ujian(elm){ var errornya = 0;

$(".inputan").each(function(){

if($(this).val() == ""){ errornya++;

$(this).focus(); return false;

} })

if(errornya == 0){

//simpan ke database

var data = $(elm).parent().serializeArray(); var url = "simpan_form.php";

var tabel = "ujian";

$.post(url,{data:data,tbl:tabel},function(hasil){

if(hasil == 1){

// reload content dengan halaman ini, karena kita butuh id_ujian dari server

$("#content").html(info_loading).load("daftar_ujian.php?id_mp=<?php echo $id_mp; ?>");

(39)

alert("gagal disimpan, mungkin data sudah ada \n

atau koneksi bermasalah");

} })

} else {

alert("harus diisi semua....");

} }

function hapus_ujian(elm,id_ujian){

var hapus = confirm("Dengan menghapus ujian ini berarti anda juga akan \n 'Menghapus seluruh data yang berkaitan dengan ujian ini ...'");

if(hapus){

var url = "hapus_data.php";

$.post(url,{id_nilai:id_ujian,id_nama:"id_ujian",table:"ujian"},function(ha sil){

if(hasil == 1){

// hapus dibaris yang dihapus saja kawan

$(elm).parent().parent().remove(); //

$("#content").html("").load("daftar_ujian.php?id_mp=<?php echo $id_mp; ?>");

(40)

alert("gagal dihapus cek query anda ...");

} }) }

}

function edit_ujian(elm,id_ujian){ var baris = $(elm).parent().parent();

$(baris).parent().find("div.sedang_diedit").removeClass("sedang_diedit"); $(baris).parent().find("div.telah_diedit").removeClass("telah_diedit");

$(baris).addClass("sedang_diedit"); // tampilkan data baris tersebut pada form

var nama_ujian = $(baris).find("div.nama_ujian").text();

var tanggal = $(baris).find("div.tanggal").text(); var waktu = $(baris).find("div.waktu").text();

waktu = waktu.split(" ");

var ket = $(baris).find("div.ket").text(); $("#nama_ujian").val(nama_ujian); $("#tanggal").val(tanggal);

$("#waktu").val(waktu[0]); $("#keterangan").val(ket);

$("#simpan_ujian").fadeOut(); $("#update_ujian").fadeIn();

// ambil id_ujian

(41)

}

function batal_update(){

$("div.sedang_diedit").removeClass("sedang_diedit"); $("#update_ujian").fadeOut();

$("#simpan_ujian").fadeIn(); $(".inputan").each(function(){

$(this).val($("#content").data($(this).attr("name"))); })

}

function update_ujian(elm){ var errornya = 0;

$(".inputan").each(function(){ if($(this).val() == ""){

errornya++;

$(this).focus(); return false;

} })

11. daftar_ujian_siswa.php

<?php

(42)

$nama_mp = mysql_result(mysql_query("select nama_mp from mapel where

id_mp='".$id_mp."'"),0);

?>

<div style="font-size:80%;width:80%;margin:0 auto;background:#FFFFFF">

<fieldset>

<legend>Daftar Ujian Pada Mata Pelajaran <?php echo $nama_mp ?></legend>

<div class='daftar_ujian'> <div class='no'>No</div>

<div class='nama_ujian'>Nama Ujian</div> <div class='tanggal'>Tanggal</div>

<div class='waktu'>Waktu</div>

<div class='ket'>Keterangan</div> <div class='aksi'>Aksi</div>

<div class='nilai'>Nilai</div> </div>

<?php

// cek ujian yang sudah dilaksanakan

$sql_nilai = "select id_ujian,nilai from nilai where id_user='".$_SESSION['nis_kj']."'";

$sql_nilai_exe = mysql_query($sql_nilai); if(mysql_num_rows($sql_nilai_exe) > 0){

$nilai = array();

(43)

$nilai[$d_nilai['id_ujian']] = $d_nilai['nilai'];

} }

// tampilkan seluruh ujian pada mata pelajaran ini

$sql = "select * from ujian where id_mp ='".$id_mp."'"; $sql_exe = mysql_query($sql);

$no = 1;

while($data = mysql_fetch_assoc($sql_exe)){ echo "<div class='daftar_ujian'>";

echo "<div class='no'>".$no++."</div>";

echo "<div class='nama_ujian'>".$data['nama_ujian']."</div>";

echo "<div class='tanggal'>".$data['tanggal']."</div>"; echo "<div class='waktu'>".$data['waktu']." Menit</div>"; echo "<div class='ket'>".$data['keterangan']."</div>";

// jika suda dikerjakan

if(isset($nilai[$data['id_ujian']])){

echo "<div class='aksi'><span class='tombol view'

onclick='view_jawaban(\"".$data['id_ujian']."\")'>Jawaban</span></div>";

echo "<div class='nilai'>".$nilai[$data['id_ujian']]."</div>"; }

else {

echo "<div class='aksi'><span class='tombol edit'

onclick='kerjakan_ujian(\"".$data['id_ujian']."\")'>Kerjakan</span></div>";

(44)

}

echo "</div>"; }

?>

</fieldset> </div>

<div class="kembali" onclick="kembali_daftar_mp()">Kembali</div>

<script>

function kembali_daftar_mp(){

$("#content").html(info_loading).load("mp_siswa.php"); }

function kerjakan_ujian(id_ujian){

$("#content").html(info_loading).load("kerjakan_ujian.php?id_ujian="+id _ujian);

}

function view_jawaban(id_ujian){

$("#content").html(info_loading).load("view_jawaban.php?id_ujian="+id_

ujian); }

(45)

12. edit_soal.php

include_once "include/koneksi.php";

$id_ujian = $_REQUEST["id_ujian"];

$ujian_exe = mysql_query("select nama_ujian,id_mp from ujian where

id_ujian='".$id_ujian."'");

while($data = mysql_fetch_assoc($ujian_exe)){ $id_mp = $data['id_mp'];

$nama_ujian = $data['nama_ujian']; }

$soal_exe = mysql_query("select * from soal where id_ujian='".$id_ujian."'

order by id_soal ");

echo "<div id='div_edit_soal'>"; if(mysql_num_rows($soal_exe) > 0){

// ambil semua pilihan jawaban dari database

$sql_jawaban = "select * from pil_jawaban where id_soal in (select id_soal from soal where id_ujian='".$id_ujian."')";

$sql_jawaban_exe = mysql_query($sql_jawaban); $pil_jawaban = array();

while($d_jawaban = mysql_fetch_assoc($sql_jawaban_exe)){

$pil_jawaban[$d_jawaban['id_soal']][$d_jawaban['id_jawaban']]['jawaban'

(46)

$pil_jawaban[$d_jawaban['id_soal']][$d_jawaban['id_jawaban']]['status'] =

$d_jawaban['status']; }

$no = 1;

echo "<div class='soal_edit'>";

echo "<div class='no_soal'>No</div>";

echo "<div class='isi_soal_edit' style='margin-left:5px'>Soal</div>"; echo "<div class='jawaban_edit'>Pilihan Jawaban</div>";

echo "</div>";

while($data = mysql_fetch_assoc($soal_exe)){ ?>

<div class='soal_edit'>

<div class='no_soal'><?php echo $no++ ?><div style="padding:2px" class="tmb_del" onclick="return

hapus_soal_ini(this)"><img src='image/del.png' title="Hapus soal ini"/></div></div>

<div class='isi_soal_edit'>

<span class='tombol info' style='margin- right:10px;float:right'></span>

<span style='margin-right:10px;float:right'

onclick='edit_soalnya(this)'><img src='image/edit.png' /></span>

(47)

<div id="<?php echo $data['id_soal'] ?>" >

<?php echo $data['isi_soal'] ?> </div>

</div>

<div class='jawaban_edit'> <?php

foreach($pil_jawaban[$data['id_soal']] as $id_jawaban => $jawaban){

if($jawaban['status'] == '1'){ $terpilih = "jwb_terpilih"; $checked = "checked";

} else {

$terpilih ="";

$checked = ""; }

echo "<div class='div_pil_jawaban $terpilih'><span class='info' style='margin-right:10px;float:right'></span>";

echo "<input disabled type='checkbox' style='float:left' $checked/>";

echo "<span style='position:auto;margin-top:-

1px;float:right' onclick='edit_jawaban(this)'><img src='image/edit.png'

(48)

echo "<span style='margin-

right:10px;float:right;display:none' onclick='simpan_jawaban(this)'><img src='image/save.png' /></span>";

echo "<div id='".$id_jawaban."'

class='pil_jawaban'>".$jawaban['jawaban']."</div></div>";

} ?>

</div> </div>

<?php

} }

else {

echo "soal masih kosong..."; }

echo "</div>"; ?>

<div class="kembali" onclick="kembali_lagi('<?php echo $id_mp

?>')">Kembali</div>

<script type="text/javascript">

function kembali_lagi(id_mp){

$("#content").html("").load("daftar_ujian.php?id_mp="+id_mp);

}

(49)

var id_soal = $(elm).next().next().attr("id");

replaceDiv(id_soal);

// sembunyikan tombol ini dan tampilkan tombol sebelahnya $(elm).fadeOut();

$(elm).next().fadeIn(); }

function simpan_soalnya(elm){

var id_soal = $(elm).next().attr("id");

hapus_kaji_editor(id_soal); var url = "update_data.php"; var tabel = "soal";

var data =

[{"name":"id_soal","value":id_soal},{"name":"isi_soal","value":$("#"+id_so al).html()}];

$(elm).parent().find(".info").html("sedang menyimpan ...").fadeIn();

$.post(url,{data:data,table:tabel},function(hasil){ if(hasil == 1){

// sembunyikan tombol ini dan tampilkan tombol

sebelahnya

$(elm).fadeOut(); $(elm).prev().fadeIn();

$(elm).parent().find(".info").html("sudah disimpan ...").delay('3000').fadeOut();

(50)

else {

alert("gagal disimpan...."); }

})

}

function edit_jawaban(elm){

var id_jawaban = $(elm).next().next().attr("id");

replaceDiv(id_jawaban);

// sembunyikan tombol ini dan tampilkan tombol sebelahnya

$(elm).fadeOut(); $(elm).next().fadeIn(); }

function simpan_jawaban(elm){

var id_jawaban = $(elm).next().attr("id");

hapus_kaji_editor(id_jawaban); var url = "update_data.php"; var tabel = "pil_jawaban";

var data =

[{"name":"id_jawaban","value":id_jawaban},{"name":"jawaban","value":$(" #"+id_jawaban).html()}];

$(elm).parent().find(".info").html("sedang menyimpan ...").fadeIn(); $.post(url,{data:data,table:tabel},function(hasil){

(51)

// sembunyikan tombol ini dan tampilkan tombol

sebelahnya

$(elm).fadeOut(); $(elm).prev().fadeIn();

$(elm).parent().find(".info").html("sudah disimpan ...").delay('3000').fadeOut();

} else {

alert("gagal disimpan....");

} })

}

function hapus_soal_ini(elm){

var konfirmasi = confirm("Yakin akan menghapus soal ini ...");

if(konfirmasi){

var id_soal = $(elm).parent().next().find("div").attr("id"); var url = "hapus_data.php";

$.post(url,{id_nilai:id_soal,id_nama:"id_soal",table:"soal"},function(hasil) {

if(hasil == 1){

(52)

//

$("#content").html("").load("daftar_ujian.php?id_mp=<?php echo $id_mp; ?>");

}

else {

alert("gagal dihapus cek query anda ...");

} })

} else {

return false;

} }

</script>

13. ganti_pass.php

<?php

session_start();

include_once "include/koneksi.php"; ?>

<div style="margin:0 auto;width:50%;padding:10px"> <fieldset>

(53)

<?php

// ambil data mata pelajaran dari database $nis = $_SESSION['nis_kj'];

?>

<div class='div_profil'>

<div class="tombol info"></div>

<div><div class="l_kiri">Password Lama</div><input class='inputan' type='password' name='pass_lama'/></div>

<div><div class="l_kiri">Password Baru</div><input class='inputan'

type='password' name='pass_baru'/></div>

<div><div class="l_kiri">Ulangi Password</div><input class='inputan' type='password' name='ulangi_pass'/></div>

<div><div class="l_kiri">&nbsp;</div><input class='tombol simpan'

type='button' value='Ubah Password' onclick='update_pass()'/></div>

</div> </fieldset> </div>

<script type="text/javascript"> function update_pass(){

var errornya = 0; var info="";

$(".inputan").each(function(){

(54)

$(this).focus();

info = "ada yang kosong, harus diisi semua"; return false;

}

})

// cek apakah password baru dan ulangi password adalah sama

if($("input[name=pass_baru]").val() ==

$("input[name=ulangi_pass]").val()){

} else {

var info = "password baru dan ulangi password tidak sama

..."+$("input[name=pass_baru]").val()+"...."+$("input[name=ulangi_pass]"). val();

errornya++;

}

if(errornya == 0){

//simpan ke database

var url = "cek_ganti_pass.php";

$.post(url,{pass_lama:$("input[name=pass_lama]").val(),pass_baru:$("inp ut[name=pass_baru]").val()},function(hasil){

if(hasil == 1){

(55)

$(".info").html("sudah disimpan

...").fadeIn('slow').delay("2000").fadeOut(); }

else{

$(".info").html(hasil).fadeIn("slow").delay("2000").fadeOut("slow");

} })

} else {

$(".info").html(info).fadeIn("slow").delay("2000").fadeOut("slow"); }

}

14. hal_admin.php

<html> <head>

<link href="image/test.jpg" rel="shortcut icon">

<link href="css/soal.css" rel="stylesheet" type="text/css" /> <link href="css/tabel.css" rel="stylesheet" type="text/css" />

(56)

<script type="text/javascript" src="js/jquery-1.5.1.min.js"></script>

<script src="js/ckeditor.js"></script>

<script src="js/ckfinder/ckfinder.js"></script> <script src="js/config.js"></script>

<script src="js/ckeditor_fungsi.js"></script> <script src="js/calendar.js"></script>

<script >

var info_loading = "<div style='font-size:110%;font-style:italic;font-

weight:bolder;width:150px;margin:0 auto;' class='tombol loading'>Sedang proses ...</div>";

function bersihkan(elm){

$("#content").data($(elm).attr("name"),$(elm).val());

$(elm).val(""); }

function kembali_semula(elm){ if($(elm).val() == ""){

$(elm).val($("#content").data($(elm).attr("name")));

} }

function load_menu(elm){

$(".menu_terpilih").eq(0).removeClass("menu_terpilih").addClass("menu_

(57)

$(elm).parent().removeClass("menu_awal").addClass("menu_terpilih");

var url = $(elm).attr("href");

$("#content").html(info_loading).load(url);

return false; }

$(function(){

$(".menu_awal>a").eq(0).click(); })

</script> </head> <body>

<div id="nav_menu">

<ul class="menu_kiri">

<li class="menu_awal"><a onclick="return

load_menu(this)" href="beranda.php">Beranda</a></li>

<li class="menu_awal"><a onclick="return load_menu(this)" href="daftar_mp.php">Daftar Ujian</a></li>

<li class="menu_awal"><a onclick="return load_menu(this)" href="daftar_siswa.php">Daftar Peserta</a></li>

<li class="menu_awal"><a onclick="return

load_menu(this)" href="daftar_nilai_mp.php">Lihat Nilai</a></li>

</ul>

(58)

<li class="menu_awal"><a onclick="return

load_menu(this)" href="ganti_pass.php">Ganti Password</a></li>

<li class="menu_awal"><a href="logout.php">Keluar</a></li>

</ul>

</div>

<div id="content"></div>

</body> </html> <?php

} ?>

15. hal_siswa.php

<html>

<head>

<link href="image/test.jpg" rel="shortcut icon">

<link href="css/soal.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="js/jquery-1.5.1.min.js"></script> <script >

var info_loading = "<div style='font-size:110%;font-style:italic;font- weight:bolder;width:150px;margin:0 auto;' class='tombol loading'>Sedang

(59)

function load_menu(elm){

$(".menu_terpilih").eq(0).removeClass("menu_terpilih").addClass("menu_ awal");

$(elm).parent().removeClass("menu_awal").addClass("menu_terpilih");

var url = $(elm).attr("href");

$("#content").html(info_loading).load(url);

return false; }

$(function(){

$(".menu_awal>a").eq(0).click(); })

</script>

</head> <body>

<div id="nav_menu">

<ul class="menu_kiri">

<li class="menu_awal"><a onclick="return

load_menu(this)" href="beranda.php">Beranda</a></li>

<li class="menu_awal"><a onclick="return load_menu(this)" href="mp_siswa.php">Ujian</a></li>

</ul>

(60)

<li class="menu_awal"><a onclick="return

load_menu(this)" href="profil.php"><?php echo ucwords($_SESSION['nama_kj']) ?></a></li>

<li class="menu_awal"><a onclick="return

load_menu(this)" href="ganti_pass.php">Ganti Password</a></li>

<li class="menu_awal"><a href="logout.php">Keluar</a></li>

</ul>

</div>

<div id="content">

</div> </body> </html>

<?php } ?>

16. hapus_data.php

<?php

include_once "include/koneksi.php"; $status = 0;

$id_nilai = $_REQUEST['id_nilai']; $id_nama = $_REQUEST['id_nama'];

(61)

$sql = "delete from ".$table." where ".$id_nama."='".$id_nilai."'";

$sql_exe = mysql_query($sql); if($sql_exe){

$status = 1;

}

echo $status;

?>

17. hapus_nilai_ujian.php

<?php

include_once "include/koneksi.php";

$status = 0;

$nis = $_REQUEST['nis'];

$id_ujian = $_REQUEST['id_ujian'];

$table = "nilai";

$sql = "delete from ".$table." where id_user='".$nis."' and id_ujian='".$id_ujian."'";

$sql_exe = mysql_query($sql); if($sql_exe){

$status = 1;

}

echo $status;

(62)

18. index.php

<?php session_start();

if(isset($_SESSION['login_kj'])){

header("location:hal_".$_SESSION['level_kj'].".php"); }

else { ?>

<html> <head>

<link href="image/test.jpg" rel="shortcut icon">

<title>Ujian Online</title> </head>

<body onload="document.forms[0]['id_user'].focus()">

<div id="div_login"> <fieldset>

<legend>Halaman login</legend> <?php

if(isset($_GET['info'])){

$display = "block";

$pemberitahuan = $_GET['info']; }

else{

(63)

$pemberitahuan = "";

} ?>

<div class="info" style="display:<?php echo $display ?>"><?php

echo $pemberitahuan; ?></div>

<form action="login.php" method="post"> <div>

<label class="kiri">NIS atau No. Pendaftaran</label> <input type="text" class="inputan" name="id_user"

placeholder="No. Pendaftaran"/>

</div> <div>

<label class="kiri">Password anda</label>

<input type="password" class="inputan" name="password" placeholder="Password"/>

</div>

<div>

<label class="kiri"> </label>

<input type="submit" class="inputan tombol" value="Login"/>

</div>

(64)

</body>

</html>

19. kerjakan_ujian.php

<?php

include_once "include/cek_session.php";

include_once "include/koneksi.php"; $id_ujian = $_REQUEST['id_ujian'];

$sql_ujian = "select * from v_ujian_mapel where id_ujian='".$id_ujian."'"; $sql_ujian_exe = mysql_query($sql_ujian);

$data_ujian = mysql_fetch_assoc($sql_ujian_exe);

if(isset($_SESSION["mulai_".$id_ujian])){

$telah_berlalu = time() - $_SESSION["mulai_".$id_ujian]; }

else {

$_SESSION["mulai_".$id_ujian] = time();

$telah_berlalu = 0; }

?>

<script type="text/javascript" src="js/jquery.countdown.js"></script>

<!-- awal div header --> <div id="header">

(65)

<div class="h_item">

<div class="item_kiri">Nama</div>

<div><?php echo $_SESSION['nama_kj']; ?></div> </div>

<div class="h_item">

<div class="item_kiri">Mata Pelajaran</div>

<div><?php echo ucwords($data_ujian['nama_mp'])." (

".ucwords($data_ujian['nama_ujian']).")" ?></div>

</div> </div>

<div id="h_item_kanan">

<div class="h_item">

<div class="item_kiri">Kelas</div> <div>Calon Siswa</div>

</div>

<div class="h_item">

<div class="item_kiri">Nilai</div> <div>0</div>

</div>

</div>

<div id="timer">00 : 00 : 00</div>

</div>

(66)

<!-- awal div tempat_soal -->

<div id="tempat_soal"> <?php

// ambil pilihan jawaban dari database dan simpan de dalam array

$sql_pil = "select * from pil_jawaban where id_soal in (select id_soal from soal where id_ujian='".$id_ujian."') order by rand()";

$sql_pil_exe = mysql_query($sql_pil); if(mysql_num_rows($sql_pil_exe) > 0){ $data_pil_arr = array();

while($data = mysql_fetch_assoc($sql_pil_exe)){ if(isset($data_pil_arr[$data['id_soal']])){

$pil_jawabannya = array("id_jawaban" => $data['id_jawaban'],"status" => $data['status'],"jawaban" => $data['jawaban']);

array_push($data_pil_arr[$data['id_soal']],$pil_jawabannya); }

else {

$data_pil_arr[$data['id_soal']] = array(); $pil_jawabannya = array("id_jawaban" =>

$data['id_jawaban'],"status" => $data['status'],"jawaban" => $data['jawaban']);

(67)

}

20. login.php

<?php

session_start();

include_once "include/koneksi.php";

// cek apakah id_user dan password telah terdaftar

function cek_login($username,$pass){

$sql = "select * from user where id_user='".$username."' and password='".md5($pass)."'";

$sql_exe = mysql_query($sql);

if(mysql_num_rows($sql_exe) > 0){ // simpan level dari user yang login

$data_login = mysql_fetch_assoc($sql_exe);

$_SESSION['level_kj'] = $data_login['level']; return true;

} else {

return false;

} }

function ambil_data($username){

$sql = "select * from ".$_SESSION['level_kj']." where

(68)

$sql_exe = mysql_query($sql);

$data = mysql_fetch_assoc($sql_exe); return $data;

}

$id_user = $_POST['id_user']; $pass = $_POST['password'];

if(cek_login($id_user,$pass)){

$data_siswa = ambil_data($id_user);

// buat session berdasarkan data siswa $_SESSION['nis_kj'] = $data_siswa['nis']; $_SESSION['nama_kj'] = $data_siswa['nama'];

$_SESSION['login_kj'] = true;

header("location:hal_".$_SESSION['level_kj'].".php"); }

else{

header("location:index.php?info=Username atau password salah");

} ?>

21. logout.php

<?php session_start();

session_destroy();

(69)

?>

22. mp_siswa.php

<?php

include_once "include/koneksi.php"; ?>

<div class="daftar_pelajaran"> <fieldset>

<legend>Pilih Mata Pelajaran</legend> <?php

// ambil data mata pelajaran dari database

$mp_exe = mysql_query("select * from mapel"); $jml_mp = mysql_num_rows($mp_exe);

if($jml_mp > 0){

?> <ul>

<?php

while($data = mysql_fetch_assoc($mp_exe)){

$jml_ujian = mysql_result(mysql_query("select count(*)

from ujian where id_mp='".$data['id_mp']."'"),0); echo "<div

onclick=\"lihat_ujian_siswa('".$data['id_mp']."')\"><span class='jml_ujian'>".$jml_ujian."</span><li><a

(70)

echo "<div class='tombol edit' >Daftar ujian</div>";

echo "</div>"; }

?> </ul>

<?php } else {

echo "Mata Pelajaran Belum Dibuat"; }

?>

</fieldset>

</div> <script>

function lihat_ujian_siswa(id_mp){

// load content dengan data dari daftar_ujian.php

$("#content").html(info_loading).load("daftar_ujian_siswa.php?id_mp="+

(71)

23. profil.php

<?php

session_start();

include_once "include/koneksi.php"; ?>

<div style="margin:0 auto;width:50%;padding:10px"> <fieldset>

<legend>Data Pribadi</legend>

<?php

// ambil data mata pelajaran dari database $tabel = $_SESSION['level_kj'];

$nis = $_SESSION['nis_kj'];

$profil_exe = mysql_query("select * from ".$tabel." where nis='".$nis."'"); $data_profil = mysql_fetch_assoc($profil_exe);

foreach($data_profil as $index => $nilai){ echo "<div class='div_profil'><div

class=l_kiri>".ucwords($index)."</div><div>".ucwords($nilai)."</div></div

>"; } ?>

(72)

24. simpan_form.php

<?php

//error_reporting (E_ALL ^ E_NOTICE); include_once "include/koneksi.php";

include_once "include/fungsi.php";

$status = 0;

$data = $_REQUEST['data'];

$tabel = $_REQUEST['tbl'];

for($i = 0; $i < count($data); $i++){ $data_ar=$data[$i];

foreach($data_ar as $id => $nil){ if($id == 'value'){

$nilai[]=mysql_escape_string($data_ar[$id]); }

else

$nama[]=$data_ar[$id]; }

}

$str_nilai = buatStringNilai($nilai); $str_kolom = buatStringKolom($nama);

$sql = "insert into ".$tabel." (".$str_kolom.") values (".$str_nilai.")"; $sql_exe = mysql_query($sql);

(73)

}

echo $status; ?>

25. simpan_soal.php

<?php

include_once "include/koneksi.php"; $data = $_REQUEST['data'];

$id_soal = $data['0']; $id_ujian = $data['1']; $pertanyaan = $data['2'];

$pil_jawaban = $data['3']; $status = 0;

// simpan ke tabel soal

$sql_soal = "insert into soal values

('".$id_soal."','".$id_ujian."','".mysql_escape_string($pertanyaan)."')";

$sql_pil = "insert into pil_jawaban (id_soal,jawaban,status) values "; $data_pil = "";

foreach($pil_jawaban as $pilihan){

$data_pil .=

"('".$id_soal."','".mysql_escape_string($pilihan['0'])."','".$pilihan['1']."'),";

}

(74)

$soal_exe = mysql_query($sql_soal);

if($soal_exe){

$pilihan_exe = mysql_query($sql_pil); $status = 1;

}

echo $status;

?>

26. update_data.php

<?php

include_once "include/koneksi.php";

include_once "include/fungsi.php"; $status = 0;

$data = $_REQUEST['data'];

$tabel = $_REQUEST['table']; for($i = 0; $i < count($data); $i++){

$data_ar=$data[$i];

foreach($data_ar as $id => $nil){ if($id == 'value'){

$nilai[]=mysql_escape_string($data_ar[$id]); }

else

(75)

}

$sql = "update ".$tabel." set ".buatStringUpdateId($nama,$nilai); $sql_exe = mysql_query($sql);

if($sql_exe){

$status = 1; }

echo $status; ?>

27. view_jawaban.php

<?php

include_once "include/cek_session.php"; include_once "include/koneksi.php"; $id_ujian = $_REQUEST['id_ujian'];

$sql_ujian = "select * from v_ujian_mapel where id_ujian='".$id_ujian."'"; $sql_ujian_exe = mysql_query($sql_ujian);

$data_ujian = mysql_fetch_assoc($sql_ujian_exe);

$nilai_exe = mysql_query("select nilai,detail_jawaban from nilai where id_user='".$_SESSION['nis_kj']."' and id_ujian='".$id_ujian."'");

$data_nilai = mysql_fetch_assoc($nilai_exe);

$jawaban_siswa_terpilih = explode(",",$data_nilai["detail_jawaban"]); ?>

(76)

<div id="header">

<div id="h_item_kiri"> <div class="h_item">

<div class="item_kiri">Nama</div>

<div><?php echo $_SESSION['nama_kj']; ?></div> </div>

<div class="h_item">

<div class="item_kiri">Mata Pelajaran</div>

<div><?php echo ucwords($data_ujian['nama_mp'])." (

".ucwords($data_ujian['nama_ujian']).")" ?></div>

</div> </div>

<div id="h_item_kanan">

<div class="h_item">

<div class="item_kiri">Kelas</div> <div>Calon Siswa</div>

</div>

<div class="h_item">

<div class="item_kiri">Nilai</div>

<div><?php echo $data_nilai['nilai'] ?></div> </div>

Referensi

Dokumen terkait

Pengaruh Beban Kerja Terhadap Resiko Komplikasi Perdarahan Pada Ibu Hamil dan Pengaruh Status Gizi Ibu Hamil Terhadap Resiko Komplikasi Perdarahan Pada Ibu Hamil.. KEK pada batas

Hal ini dapat dilihat dengan adanya peningkatan pendapatan yang diperoleh oleh pelaku usaha akomodasi sehingga pelaku usaha tersebut dapat menambah jumlah tabungan yang

Objek penelitian ini adalah seluruh dokumen atau laporan kasus ISPA oleh Dinas Kesehatan Kota Medan dan dokumen atau laporan kualitas udara (uji roadsite) Kota Medan

Berdasarkan pada tabel tersebut diketahui bahwa dari 74 wanita pasangan usia subur di Kelurahan Ngupasan pada tahun 2017 yang menjadi subyek penelitian, terdapat paling

Komunikasi ini menjadi penting untuk dilihat lebih dekat karena, (1) keluarga adalah tempat dimana orang dewasa dan remaja mengalami bagian terbesar dari hubungan antar

Pembelajaran adalah proses membantu seseorang berpikir secara benar, dengan cara membiarkannya berpikir sendiri, Berpikir yang baik lebih penting daripada mempunyai jawaban yang

Varian lain dari biliar, snooker dimainkan di atas meja dengan 6 lubang 22 bola (1 putih bola, 15 bola merah dan 6 bola warna: kuning, hijau, coklat, biru, pink dan hitam).. Semua

Demikian pemberitahuan surat kuasa ini agar dapat dipahami oleh pihak CIMB Niaga Auto Finance Cabang Jambi untuk memberikan hak yang sama kepada pemegang