SURAT KETERANGAN
Hasil Uji Program Tugas Akhir
Yang bertanda tangan dibawah ini, menerangkan bahwa Mahasiswa Tugas Akhir
Program Diploma 3 Teknik Informatika :
Nama
:
MEYLIA SANDRA TAMPUBOLON
NIM
:
132406109
Prog.Studi
:
D3 Teknik Informatika
Judul TA
:
PERANCANGAN APLIKASI SIMULASI PSIKOTEST
BERBASIS WEB
Telah melaksanakan test program Tugas Akhir Mahasiswa tersebut di atas pada
tanggal...
Dengan Hasil :
SUKSES / GAGAL
Demikian diterangkan untuk digunakan melengkapi syarat pendaftaran Ujian Meja
Hijau Tugas Akhir Mahasiswa bersangkutan di Departemen Matematika FMIPA USU
Medan.
Medan, Juni 2016
DosenPembimbing
(Dr. Syahriol Sitorus, S.Si.M.IT)
KARTU BIMBINGAN TUGAS AKHIR MAHASISWA
Nama Mahasiswa
: MEYLIA SANDRA TAMPUBOLON
Nomor Stambuk
: 132406109
Judul Tugas Akhir
: PERANCANGAN
APLIKASI
SIMULASI
PSIKOTEST BERBASIS WEB
Dosen Pembimbing
: Dr. Syahriol Sitorus, S.Si.M.IT
Tanggal Mulai Bimbingan
:
Tanggal Selesai Bimbingan :
No.
Tanggal
Asisten
Bimbingan
Pembahasan pada
Asistensi Mengenai, pada
Bab :
Paraf Dosen
Pembimbing
Keterangan
1.
2.
3.
4.
5.
6.
7
Diketahui,
Disetujui,
Ketua Prog.Studi D3 Teknik Informatika,
Dosen Pembimbing,
Dr. Elly Rosmaini, M.Si.
Dr. Syahriol Sitorus, S.Si.M.IT
LAMPIRAN PROGRAM
1.
Index.php
<!doctype html> <html>
<head>
<meta charset="utf-8">
<title>PERANCANGAN APLIKASI SIMULASI PSIKOTEST BERBASIS WEB</title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css"> <link rel="stylesheet" href="style.css">
<link rel="stylesheet" href="administrator/alert/css/jquery-confirm.css">
<script type="text/javascript"
src="bootstrap/js/bootstrap.min.js"></script> <script src="js/jquery.min.js"></script>
<script src="administrator/alert/js/jquery-confirm.js"></script> </head>
<body>
<div id="wrapper">
<div id="header"></div> <div id="content"> <div class="row"> <div class="col-md-6">
<div class="panel panel-default"> <div class="panel-heading">
</div>
<div class="panel-body">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table">
<tbody> <tr>
<td width="25%">Email</td>
<td width="75%"><input type="text" name="txtemail" id="txtemail" class="form-control"></td>
</tr> <tr>
<td>Password</td>
<td><input type="password" name="txtpassword" id="txtpassword" class="form-control"></td>
</tr> <tr>
<td> </td>
<td><input type="button" name="cmdmasuk" id="cmdmasuk" value="Masuk" class="btn btn-primary btn-sm btn-block"></td>
</tr> </tbody> </table>
</div> </div>
</div>
<div class="col-md-6"> <div class="panel panel-danger"> <div class="panel-heading">
</div>
<div class="panel-body">
<a href="login.php" class="btn btn-danger">Login System</a> <a href="registrasi.php" class="btn btn-info">Regitrasi</a>
</div> </div> </div> </div> </div> </div>
<script>
$(document).ready(function(e) {
$('#cmdmasuk').click(function(e) { var temail=$('#txtemail').val();
var pwd=$('#txtpassword').val(); $.post('validasiuser.php', {
temail:temail, pwd:pwd
}, function (data, status){ if (data==''){
document.location.href='home.php?page=zindex'; }
else{
$.alert({content:data}); }
</script> </body> </html>
2.
Home.php
<?php error_reporting("E_ALL ^ E_NOTICE"); ?> <?php include 'cekuser.php'; ?>
<?php include 'koneksi.php'; ?> <?php
$idpeserta=$_SESSION['sesiidpeserta'];
$nama=$db->tampilrecord("tblpeserta", "idpeserta='$idpeserta'", "nama");
$temail=$db->tampilrecord("tblpeserta", "idpeserta='$idpeserta'", "email");
$pretest=$db->tampilrecord("tblpengaturan", "kriteria='PRETEST'", "nilai");
if ($pretest>=1){
echo "<script>
document.location.href='ujian/index.php?page=info'; </script>";
} ?>
<!doctype html> <html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css"> <link rel="stylesheet" href="style-home.css">
<link rel="stylesheet" href="administrator/alert/css/jquery-confirm.css">
<script type="text/javascript"
src="bootstrap/js/bootstrap.min.js"></script> <script src="js/jquery.min.js"></script>
<script src="administrator/alert/js/jquery-confirm.js"></script> </head>
<body> <?php
?>
<div id="wrapper">
<div id="header"></div> <div id="container">
<div class="row" style="padding:10px;">
<div class="panel panel-info"> <div class="panel-heading">
<h4 class="panel-title">Home</h4> </div>
<div class="panel-body"> <?php
$page=$_GET['page']; if ($page==''){ ?>
<!-- -->
<div id="isi"></div> </div>
<div class="col-md-12"> <div id="ket"></div> <div id="cwaktu"></div> </div>
<!-- ---> <?php
} else{
include 'home/zindex.php'; }
?>
</div> </div>
</div> </div> </div> <script>
$(document).ready(function(e) { setInterval(function(){
$('#isi').load('home/index.php'); }, 1000);
setInterval(function(){
$('#ket').load('home/hasil.php'); }, 1000);
$('#cwaktu').load('home/cekwaktu.php'); }, 1000);
});
</script> </body> </html>
3.
Cek.php
<?php session_start(); ?> <?php
if (!isset($_SESSION[sesipsikologiuser]) or
!isset($_SESSION[sesipsikologipass])){
echo "<script> document.location.href='login.php'; </script>";
} ?>
4.
Cekuser.php
<?php session_start(); ?> <?php
if (!isset($_SESSION['sesiidpeserta']) or
!isset($_SESSION['sesitgllahir'])){
echo "<script> document.location.href='index.php'; </script>";
} ?>
5.
Koneksi.php
<?php
include 'config.php'; }
elseif (file_exists('../config.php')){ include '../config.php';
}
elseif (file_exists('../../config.php')){ include '../../config.php';
}
elseif (file_exists('../../../config.php')){ include '../../../config.php';
}
$db=new database('localhost', 'root', '', 'dbpsikotest'); $db->konekdb();
?>
6.
Login.php
<!doctype html> <html>
<head>
<meta charset="utf-8"> <title>Login System</title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css"> <script src="bootstrap/js/bootstrap.min.js"></script>
<script src="js/jquery.min.js"></script> </head>
<body>
<div class="col-md-4 col-xs-offset-4"> <div class="panel panel-info">
<div class="panel-heading">Login</div> <div class="panel-body">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table">
<tbody> <tr>
<td width="35%">Username</td>
<td width="65%"><input type="text" name="txtusername" id="txtusername" class="form-control"></td>
</tr> <tr>
<td>Password</td>
<td><input type="password" name="txtpassword" id="txtpassword" class="form-control"></td>
</tr> <tr>
<td> </td>
<td><input type="button" name="cmdlogin" id="cmdlogin" value="Login" class="btn btn-primary btn-sm btn-block"></td> </tr>
</tbody> </table>
<script>
$(document).ready(function(e) {
$('#cmdlogin').click(function(e) { var u=$('#txtusername').val(); var p=$('#txtpassword').val(); if (u=='' || p==''){
return false; }
$.post('logincek.php', {
u:$('#txtusername').val(), p:$('#txtpassword').val() }, function (data, status){
if (data==''){
document.location.href='administrator/index.php' }
else{
alert(data); }
}); }); });
</script> </body> </html>
7.
Logincek.php
include 'koneksi.php';
$u=$_POST['u']; $p=$_POST['p'];
if ($db->cekrecord("select * from tbladmin where userku='$u' and passku='$p'")==true){
$_SESSION['sesipsikologiuser']=$u; $_SESSION['sesipsikologipass']=$p; echo '';
} else{
echo 'Terjadi kesalahan!'; }
?>
8.
Registrasi.php
<!doctype html> <html>
<head>
<meta charset="utf-8">
<title>PERANCANGAN APLIKASI SIMULASI PSIKOTEST BERBASIS WEB</title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css"> <link rel="stylesheet" href="style.css">
<link rel="stylesheet" href="administrator/alert/css/jquery-confirm.css">
<link rel="stylesheet"
<script type="text/javascript"
src="bootstrap/js/bootstrap.min.js"></script> <script src="js/jquery.min.js"></script>
<script src="administrator/alert/js/jquery-confirm.js"></script> <script
src="administrator/plugins/datepicker/bootstrap-datepicker.js"></script> </head>
<body>
<div id="wrapper">
<div id="header"></div> <div id="content"> <div class="row">
<div class="col-md-12">
<div class="panel panel-primary">
<div class="panel-heading">Registrasi Peserta Baru</div> <div class="panel-body">
<form name="form1" method="post" action="simpan.php">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table">
<tbody> <tr>
<td width="22%">Nama</td>
<td width="78%"><div class="col-md-10"><input type="text" name="txtnama" id="txtnama" class="form-control"></div></td> </tr>
<tr>
<td>J. Kelamin</td>
<option value="Pria">Pria</option> <option value="Wanita">Wanita</option> </select></div></td>
</tr> <tr>
<td>Tempat & Tgl Lahir</td>
<td><div class="col-md-8"><input type="text"
name="txttempat" id="txttempat" class="form-control"></div><div class="col-md-4"><input type="text" name="txttgllahir"
id="txttgllahir" class="form-control"></div></td> </tr>
<tr>
<td>Alamat</td>
<td><div class="col-md-12"><input type="text"
name="txtalamat" id="txtalamat" class="form-control"></div></td> </tr>
<tr>
<td>Pendidikan Terakhir</td>
<td><div class="col-md-4"><select name="txtpendidikan" class="form-control" id="txtpendidikan">
<option value="SMA">SMA</option> <option value="D1">D1</option> <option value="D3">D3</option> <option value="S1">S1</option> <option value="S2">S2</option> </select></div></td>
</tr> <tr>
<td><div class="col-md-5"><input type="text" name="txtemail" id="txtemail" class="form-control"></div></td>
</tr> <tr>
<td>Password</td>
<td><div class="col-md-5"><input type="password"
name="txtpass1" id="txtpass1" class="form-control"></div></td> </tr>
<tr>
<td>re-tye Password</td>
<td><div class="col-md-5"><input type="password"
name="txtpass2" id="txtpass2" class="form-control"></div></td> </tr>
<tr>
<td> </td>
<td><div class="col-md-12"><input name="cmdsimpan" type="submit" id="cmdsimpan" value="Simpan" class="btn
btn-primary"> <input name="cmdkembali" type="button" id="cmdkembali" value="Kembali" class="btn btn-default"></div></td>
</tr> </tbody> </table> </form> </div> </div>
<script>
$(document).ready(function(e) {
$('#txttgllahir').datepicker({format:'dd-mm-yyyy'}); $('#cmdkembali').click(function(e) {
document.location.href='index.php'; });
$('#cmdsimpan').click(function(e) { var nama=$('#txtnama').val();
if (nama==''){
$.alert({content:'Nama belum diisi!'}); return false;
}
var tempat=$('#txttempat').val(); if (tempat==''){
$.alert({content:'Tempat lahir belum diisi!'}); return false;
}
var tgllahir=$('#txttgllahir').val(); if (tgllahir==''){
$.alert({content:'Tanggal lahir belum diisi!'}); return false;
}
var email=$('#txtemail').val(); if (email==''){
$.alert({content:'email belum diisi!'}); return false;
}
$.alert({content:'Password belum diisi!'}); return false;
}
var pwd1=$('#txtpass2').val(); if (pwd2==''){
$.alert({content:'retype Password belum anda isi!'});
return false; }
if (pwd1!=pwd2){
$.alert({content:'Password tidak sama!'}); return false;
} }); });
</script> </body> </html>
9.
Regsukses.php
<!doctype html> <html>
<head>
<meta charset="utf-8">
<title>PERANCANGAN APLIKASI SIMULASI PSIKOTEST BERBASIS WEB</title>
<link rel="stylesheet" href="administrator/alert/css/jquery-confirm.css">
<link rel="stylesheet"
href="administrator/plugins/datepicker/datepicker3.css"> <script type="text/javascript"
src="bootstrap/js/bootstrap.min.js"></script> <script src="js/jquery.min.js"></script>
<script src="administrator/alert/js/jquery-confirm.js"></script> <script
src="administrator/plugins/datepicker/bootstrap-datepicker.js"></script> </head>
<body>
<div id="wrapper">
<div id="header"></div> <div id="content"> <div class="row">
<div class="col-md-12">
<div class="alert alert-success" role="alert"><strong>Registrasi Sukses !</strong> Terima kasih, data anda sudah disimpan. Untuk memulai simulai psikologi silahkan klik tombol dibawah <p><a
href="index.php" class="btn btn-primary btn-sm">Login</a></div> </div>
10.
Simpan.php
<?php
include 'koneksi.php'; $nama=$_POST['txtnama']; $jk=$_POST['txtjk'];
$tempat=$_POST['txttempat']; $tgllahir=$_POST['txttgllahir']; $alamat=$_POST['txtalamat'];
$pendidikan=$_POST['txtpendidikan']; $email=$_POST['txtemail'];
$pwd=$_POST['txtpass1'];
$tgl=$db->ubahtanggal($tgllahir);
if ($db->cekrecord("select * from tblpeserta where email='$email'")==true){
echo 'Email sudah terdaftar, periksa kembali data anda!'; }
else{
$qry=mysql_query("insert into tblpeserta (nama, jk, tempat, tgllahir, alamat, pendidikan, email, password) values ('$nama', '$jk', '$tempat', '$tgl', '$alamat', '$pendidikan', '$email', '$pwd')");
if ($qry){
echo "<script> document.location.href='regsukses.php'; </script>";
echo 'Terjadi kesalahan, silahkan hubungi panitia!'; }
} ?>
11.
Simpanreg.php
<?php
echo 'Sukses'; ?>
12.
Validuser.php
<?php session_start(); ?> <?php
include 'koneksi.php';
$temail=$_POST['temail']; $pwd=$_POST['pwd'];
if ($db->cekrecord("select * from tblpeserta where email='$temail' and password='$pwd'")==true){
$id=$db->tampilrecord("tblpeserta", "email='$temail'", "idpeserta");
$tgl=$db->tampilrecord("tblpeserta", "email='$temail'", "tgllahir");
$idpeserta=$id;
$qry=mysql_query("select * from tblujianpeserta where idpeserta='$idpeserta' order by idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$data=mysql_fetch_array($qry); $idujian=$data['idujian']; #echo $idujian.' '.$idpeserta;
$qry=mysql_query("update tblujianpeserta set ket='' where idpeserta='$idpeserta' and idujian='$idujian'");
if ($qry){
} else{
echo 'Gagal'; }
$qry=mysql_query("select * from tblujiankategori where idujian='$idujian'");
while ($data=mysql_fetch_array($qry)){ $kategori=$data['kategori']; $waktu=$data['waktu'];
if ($db->cekrecord("select * from tblujianwaktu where idpeserta='$idpeserta' and idujian='$idujian' and
kategori='$kategori'")==false){
$qrywaktu=mysql_query("insert into tblujianwaktu (idujian, idpeserta, kategori, waktu) values ('$idujian', '$idpeserta', '$kategori', '$waktu')");
if ($qrywaktu){
else
echo "Gagal"; }
} }
echo ''; }
else{
echo 'Terjadi kesalahan!'; }
?>
13.
Logout.php
<?php session_start(); ?> <?php
unset($_SESSION['sesiidpeserta']); unset($_SESSION['sesitgllahir']);
echo "<script> document.location.href='index.php'; </script>"; ?>
14.
Cekwaktu.php
<?php error_reporting("E_ALL ^ E_NOTICE"); ?> <?php session_start(); ?>
<?php
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta'];
<?php
$qry=mysql_query("select tblujian.idujian, tblujian.st,
tblujianpeserta.idpeserta from tblujian INNER JOIN tblujianpeserta ON tblujian.idujian=tblujianpeserta.idujian where
tblujianpeserta.idpeserta='$id' and tblujian.st='1' order by tblujian.idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$dataujian=mysql_fetch_array($qry); $idujian=$dataujian[0];
$ket=$db->tampilrecord("tblujian", "idujian='$idujian'", "keterangan");
$jabatan=$db->tampilrecord("tblujian", "idujian='$idujian'", "jabatan");
}
if (isset($_SESSION['sesikategori'])){
$waktu=$db->tampilrecord("tblujianwaktu", "idpeserta='$id' and idujian='$idujian' and kategori='$skategori'", "waktu");
$waktu--;
$qry=mysql_query("update tblujianwaktu set waktu='$waktu' where idujian='$idujian' and idpeserta='$id' and
kategori='$skategori'"); }
?>
15.
Hasil.php
<?php #error_reporting("E_ALL ^ E_NOTICE"); ?> <?php session_start(); ?>
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta'];
$qry=mysql_query("select * from tblujianpeserta where idpeserta='$id' order by idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$data=mysql_fetch_array($qry); $idujian=$data['idujian']; $hasil=$data['ket'];
$lulus=$data['lulus']; $nilai=$data['nilai'];
$jlhkategori=$db->totalrecord("tblujiankategori", "idujian='$idujian'");
$hasil=str_replace('Anda tidak lulus ujian', '', $hasil); $hasil=str_replace('.', ', ', $hasil);
$score=(($nilai*$jlhkategori)/$jlhkategori)*10; #$score=$jlhkategori;
} else{
}
if ($hasil<>''){ ?>
<div style="width:400px; margin-left:auto; margin-right:auto"> <div class="panel panel-primary">
<div class="panel-heading">Hasil Ujian</div> <div class="panel-body">
if ($lulus>=1){ ?>
<div style="font-size:14px; color:#002CB9;">Selamat! Anda Lulus Simulasi Psikotest <br>
Score Anda : <?php echo $score; ?> </div>
<?php } else{
?> <!-- --> <div>
<div style="color:red; font-size:16px;">Maaf Anda Gagal.</div> <br> Anda tidak memenuhi kriteria yang telah ditetapkan.<br> Score Anda : <?php echo $score; ?> <br>
Anda Gagal di bagian : <?php echo $hasil; ?> <br>
Silahkan mencoba kembali! </div>
<?php } ?> <!-- --> </div> </div> </div> <?php } ?>
16.
Hasil.php
<?php
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta'];
$qry=mysql_query("select * from tblujianpeserta where idpeserta='$id' order by idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$data=mysql_fetch_array($qry); $idujian=$data['idujian']; $hasil=$data['ket'];
$lulus=$data['lulus']; $nilai=$data['nilai'];
$jlhkategori=$db->totalrecord("tblujiankategori", "idujian='$idujian'");
$hasil=str_replace('Anda tidak lulus ujian', '', $hasil); $hasil=str_replace('.', ', ', $hasil);
$score=(($nilai*$jlhkategori)/$jlhkategori)*10; #$score=$jlhkategori;
} else{
}
if ($hasil<>''){ ?>
<div style="width:400px; margin-left:auto; margin-right:auto"> <div class="panel panel-primary">
<div class="panel-heading">Hasil Ujian</div> <div class="panel-body">
<?php
if ($lulus>=1){ ?>
<div style="font-size:14px; color:#002CB9;">Selamat! Anda Lulus Simulasi Psikotest <br>
Score Anda : <?php echo $score; ?> </div>
<?php } else{
?> <!-- --> <div>
<div style="color:red; font-size:16px;">Maaf Anda Gagal.</div> <br> Anda tidak memenuhi kriteria yang telah ditetapkan.<br> Score Anda : <?php echo $score; ?> <br>
Anda Gagal di bagian : <?php echo $hasil; ?> <br>
Silahkan mencoba kembali! </div>
<?php } ?> <!-- --> </div> </div> </div> <?php } ?>
17.
Hasilakhir.php
<?php session_start(); ?> <?php
include '../koneksi.php';
$idpeserta=$_SESSION['sesiidpeserta']; echo $idpeserta;
$qry=mysql_query("select * from tblujianpeserta where idpeserta='$idpeserta' order by idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$data=mysql_fetch_array($qry); $idujian=$data['idujian']; $hasil=$data['ket'];
$lulus=$data['lulus']; $nilai=$data['nilai'];
$jlhkategori=$db->totalrecord("tblujiankategori", "idujian='$idujian'");
$hasil=str_replace('Anda tidak lulus ujian', '', $hasil); $hasil=str_replace('.', ', ', $hasil);
$score=($nilai*10)/$jlhkategori; #$score=$jlhkategori;
} else{
exit; }
echo $idujian;
$i=0;
$qry=mysql_query("select * from tblujiankategori where idujian='$idujian'");
while ($data=mysql_fetch_array($qry)){ $jlhlulus=$data['jlhlulus']; $kategori=$data['kategori'];
$hasil=$db->hitungjawabanbenar($idujian, $idpeserta, $kategori);
if ($hasil>=$jlhlulus){
$ket='Selamat! Anda Lulus '; }
else{
$k=$k.'Anda tidak lulus ujian '.$kategori.'. '; $i++;
} }
#
$jlhbenar=$db->jumlahrecord("select * from tbljawaban where idpeserta='$idpeserta' and idujian='$idujian' and st='1'");
if ($i<=0){
$query="update tblujianpeserta set ket='$ket',
nilai='$jlhbenar', lulus='1' where idpeserta='$idpeserta' and idujian='$idujian'";
} else{
$query="update tblujianpeserta set ket='$k',
nilai='$jlhbenar', lulus='0' where idpeserta='$idpeserta' and idujian='$idujian'";
}
echo 'Sukses '; }
else{
echo 'Gagal '; }
?>
18.
Hitung.php
<?php session_start(); ?> <?php
include '../koneksi.php';
$idpeserta=$_SESSION['sesiidpeserta'];
$qry=mysql_query("select tblujian.idujian, tblujian.st,
tblujianpeserta.idpeserta from tblujian INNER JOIN tblujianpeserta ON tblujian.idujian=tblujianpeserta.idujian where
tblujianpeserta.idpeserta='$id' and tblujian.st='1' order by tblujian.idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$dataujian=mysql_fetch_array($qry); $idujian=$dataujian[0];
$ket=$db->tampilrecord("tblujian", "idujian='$idujian'", "keterangan");
$jabatan=$db->tampilrecord("tblujian", "idujian='$idujian'", "jabatan");
$i=0;
$qry=mysql_query("select * from tblujiankategori where idujian='$id'");
$k='';
while ($data=mysql_fetch_array($qry)){ $jlhlulus=$data['jlhlulus']; $kategori=$data['kategori']; $idpeserta=$dataku['idpeserta'];
$hasil=$db->hitungjawabanbenar($id, $idpeserta, $kategori);
if ($hasil>=$jlhlulus){
$ket='Selamat! Anda Lulus '; }
else{
$k=$k.'Anda tidak lulus ujian '.$kategori.'. '; $i++;
} }
#
$jlhbenar=$db->jumlahrecord("select * from tbljawaban where idpeserta='$dataku[idpeserta]' and idujian='$id' and st='1'");
if ($i<=0){
$query="update tblujianpeserta set ket='$ket',
nilai='$jlhbenar', lulus='1' where idpeserta='$dataku[idpeserta]' and idujian='$id'";
$query="update tblujianpeserta set ket='$k',
nilai='$jlhbenar', lulus='0' where idpeserta='$dataku[idpeserta]' and idujian='$id'";
}
$qryhasil=mysql_query($query); if ($qryhasil){
echo 'Sukses '; }
else{
echo 'Gagal '; }
?>
19.
Pilih.php
<?php
include '../koneksi.php';
$nilai=$_POST['nilai'];
$qry=mysql_query("update tbljawaban set jwb='0' where idjawaban='$nilai'");
if ($qry){
#echo 'Sukses'; }
else{
?>
20.
Pilihkategori.php
<?php session_start(); ?>
<?php$kategori=$_POST['kategori'];
$_SESSION['sesikategori']=$kategori; echo '';
?>
21.
Ulangi.php
<?php session_start(); ?> <?php
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta']; ?>
<?php
$qry=mysql_query("select tblujian.idujian, tblujian.st,
tblujianpeserta.idpeserta from tblujian INNER JOIN tblujianpeserta ON tblujian.idujian=tblujianpeserta.idujian where
tblujianpeserta.idpeserta='$id' and tblujian.st='1'"); $jlh=mysql_num_rows($qry);
if ($jlh>=1){
$dataujian=mysql_fetch_array($qry); $idujian=$dataujian[0];
$jabatan=$db->tampilrecord("tblujian", "idujian='$idujian'", "jabatan");
}
$qry=mysql_query("select * from tblujiankategori where idujian='$idujian'");
while ($data=mysql_fetch_array($qry)){ $kategori=$data['kategori'];
$waktu=$data['waktu'];
$qrywaktu=mysql_query("update tblujianwaktu set waktu='$waktu' where idpeserta='$id' and idujian='$idujian' and
kategori='$kategori'"); }
$qry=mysql_query("update tblujianpeserta set ket='' where idpeserta='$id' and idujian='$idujian'");
$qry=mysql_query("update tbljawaban set jwb='0' where idujian='$idujian' and idpeserta='$id'");
?>
22.
Zindex.php
<?php #error_reporting("E_ALL ^ E_NOTICE"); ?> <?php session_start(); ?>
<?php
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta']; ?>
<div class="col-md-4">
<div class="panel-heading">Pilih Kategori</div> <div class="panel-body">
<?php
$qry=mysql_query("select tblujian.idujian, tblujian.st,
tblujianpeserta.idpeserta from tblujian INNER JOIN tblujianpeserta ON tblujian.idujian=tblujianpeserta.idujian where
tblujianpeserta.idpeserta='$id' and tblujian.st='1' order by tblujian.idujian desc");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$dataujian=mysql_fetch_array($qry); $idujian=$dataujian[0];
$ket=$db->tampilrecord("tblujian", "idujian='$idujian'", "keterangan");
$jabatan=$db->tampilrecord("tblujian", "idujian='$idujian'", "jabatan");
} ?>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table">
<tbody> <?php
#echo $idujian.' '.$id;
$qry=mysql_query("select * from tblujianwaktu where
idujian='$idujian' and idpeserta='$id' and waktu>0 order by kategori asc");
while ($data=mysql_fetch_array($qry)){ ?>
<td><a href="#" class="btn btn-warning btn-block cmdpilih" id="<?php echo $data['kategori']; ?>"><?php echo
$data['kategori']; ?></a></td> </tr>
<?php } ?> </tbody> </table>
</div> </div> </div>
<div class="col-md-8"> <?php
echo '<div class="alert alert-danger" role="alert"> <h3>Petunjuk Soal:</h3>
<p>
Soal terdiri dari 3 kategori.<br>
Anda dapat beralih ke soal berikutnya secara otomatis ketika menjawab pertanyaan. <br>
Apabila soal sudah terjawab semua, anda dapat memperbaiki jawaban anda sesuai nomor urutannya, nomor urutannya berada pada sisi bawah.
</p>
<p><a href="logout.php" class="btn btn-danger btn-sm">Logout</a> <a href="#" class="btn btn-danger btn-sm"
id="cmdulangi">Ulangi</a> </p>
</div>'; ?>
<div id="hasilakhir"></div> </div>
<script>
$(document).ready(function(e) {
$('.cmdpilih').click(function(e) { var nilai=$(this).attr('id');
$.post('home/pilihkategori.php', { kategori:nilai
}, function (data, status){
document.location.href='home.php'; });
});
$('#cmdulangi').click(function(e) { $.post('home/ulangi.php', {
}, function (data, status){
document.location.href='home.php?page=zindex'; });
});
$('#cmdhasil').click(function(e) { $.post('home/hasilakhir.php', {
}, function (data, status){
});
$('#hasilakhir').load('home/hasil.php'); });
23.
Cekwaktu.php
<?php session_start(); ?> <?php
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta']; ?>
<?php
$waktu=$db->tampilrecord("tblpretesthasil", "idpeserta='$id' and st='1'", "waktu");
$idhasilpretest=0;
$idhasilpretest=$db->tampilrecord("tblpretesthasil", "idpeserta='$id' and st='1'", "idhasilpretest"); #echo $waktu;
if ($idhasilpretest!=0 and $waktu>=0){ $waktu--;
$qry=mysql_query("update tblpretesthasil set waktu='$waktu' where idhasilpretest='$idhasilpretest'");
if ($waktu<=0){
$qry=mysql_query("update tblpretesthasil set st='0', waktu='0' where idhasilpretest='$idhasilpretest'");
} } ?>
24.
Hitung.php
<?php session_start(); ?> <?php
include '../koneksi.php';
$jabatan=$_GET['jabatan'];
$jlhsoal=0; $jbenar=0; $ket=''; $stlulus=0;
$qry=mysql_query("select * from tblpretestpengaturan where jabatan='$jabatan'");
while ($data=mysql_fetch_array($qry)){ $jlhlulus=$data['lulus'];
$jlhsoal=$jlhsoal+$data['jlh']; $kategori=$data['kategori'];
$jlhbenar=$db->totalrecord("tblpretest", "idpeserta='$id' and jabatan='$jabatan' and kategori='$kategori' and st='1'");
if ($jlhbenar>=$jlhlulus){
} else{
$ket=$ket.$data['kategori'].' '; $stlulus=1;
} } # #
#echo "ST LULUS ".$stlulus;
#echo " JUMLAH BENAR ".$jlhbenar;
$jbenar=$db->totalrecord("tblpretest", "idpeserta='$id' and jabatan='$jabatan' and st='1'");
if ($stlulus>=1){
$keterangan="Maaf anda tidak lulus. Anda gagal pada kategori ".$ket;
$klulus=0; }
else{
$keterangan="Selamat! Anda lulus"; $klulus=1;
}
$qry=mysql_query("update tblpretesthasil set hasil='$keterangan', nilai='$nilai', stlulus='$klulus' where idpeserta='$id' and
jabatan='$jabatan'"); if ($qry){
echo
"<script>document.location.href='tampilhasil.php?jabatan=$jabatan' ; </script>";
} else{
echo 'Terjadi kesalahan!'; }
?>
25.
Pilihjabatan.php
<?php session_start(); ?> <?php
$idpeserta=$_SESSION['sesiidpeserta']; $jabatan=$_GET['jabatan'];
$_SESSION['sesijabatan']=$jabatan; #
$qry=mysql_query("delete from tblpretest where idpeserta='$idpeserta' and jabatan='$jabatan'"); if($qry){
} else{
echo "Terjadi kesalahan!"; exit;
} #
$waktu=0;
$qry=mysql_query("select * from tblpretestpengaturan where jabatan='$jabatan'");
while ($dataku=mysql_fetch_array($qry)){ $jlhsoal=$dataku['jlh'];
$kategori=$dataku['kategori']; $waktu=$waktu+$dataku['waktu']; #
$qrysoal=mysql_query("SELECT * FROM tblsoal where
kategori='$dataku[kategori]' and jabatan='$jabatan' ORDER BY RAND() LIMIT ".$jlhsoal);
while ($datasoal=mysql_fetch_array($qrysoal)){ $idsoal=$datasoal['idsoal'];
$db->simpansoalpretest($idpeserta, $idsoal, $kategori, $jabatan);
}
if ($db->cekrecord("select * from tblpretesthasil where idpeserta='$idpeserta' and jabatan='$jabatan'")==true){
$qry=mysql_query("update tblpretesthasil set st='0' where idpeserta='$idpeserta'");
$qry=mysql_query("update tblpretesthasil set hasil='',
nilai='', waktu='$waktu', st='1' where idpeserta='$idpeserta' and jabatan='$jabatan'");
if ($qry){
} else{
echo "Gagal Edit"; }
} else{
$qry=mysql_query("insert into tblpretesthasil (idpeserta, jabatan, hasil, nilai, waktu, st) values ('$idpeserta', '$jabatan', '', '0', '$waktu', '1')");
if ($qry){ }
else{
echo "gagal tambah"; }
}
26.
Soal.php
<?php error_reporting("E_ALL ^ E_NOTICE"); ?> <?php session_start(); ?>
<?php
include '../koneksi.php';
$id=$_SESSION['sesiidpeserta']; ?>
<div class="col-md-12"> <?php
$qry=mysql_query("select * from tblpretesthasil where idpeserta='$id' and st='1'");
$jlh=mysql_num_rows($qry); if ($jlh>=1){
$jabatan=$db->tampilrecord("tblpretesthasil", "idpeserta='$id' and st='1'", "jabatan");
?>
<!-- -->
<p style="font-family:Lucida Sans Cambria, 'Hoefler Text', 'Liberation Serif', Times, 'Times New Roman', serif; font-size:16px; color:#B30002; font-weight:bold;
text-transform:uppercase" align="center">JABATAN : <?php echo strtoupper($jabatan); ?></p>
<p align="center">
<div style="width:280px; margin-left:auto; margin-right:auto"> <?php
$waktu=$db->tampilrecord("tblpretesthasil", "idpeserta='$id' and st='1'", "waktu");
if ($waktu<=0){ echo "<script>
document.location.href='index.php?page=hasil&jabatan=$jabatan'; </script>";
} ?>
<div class="alert alert-warning" role="alert" style="text-align:center">
<small>Waktu</small>
<h1 align="center"><?php echo $waktu; ?></h1> </div>
</div> </p> <!-- --> <?php
$qry=mysql_query("select * from tblpretest where
idpeserta='$id' and jabatan='$jabatan' and jwb='0' order by idpretest asc");
$jlhsoal=mysql_num_rows($qry); if ($jlhsoal>=1){
$data=mysql_fetch_array($qry); $soal=$db->tampilrecord("tblsoal", "idsoal='$data[idsoal]'", "soal");
$jwba=$db->tampilrecord("tblsoal", "idsoal='$data[idsoal]'", "jwb_a");
$jwbb=$db->tampilrecord("tblsoal", "idsoal='$data[idsoal]'", "jwb_b");
$jwbd=$db->tampilrecord("tblsoal", "idsoal='$data[idsoal]'", "jwb_d");
$kelompok=$db->tampilrecord("tblsoal", "idsoal='$data[idsoal]'", "kategori");
?>
<h3 style="margin-top:5px;" align="center">SOAL <?php echo strtoupper($kelompok); ?></h3>
<div style="width:100%; border-bottom:solid 2px #477E00;"></div> <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table" style="font-size:16px; font-weight:bold;">
<tbody> <tr>
<td colspan="2"><div style="font-size:14px; color:#01118F; font-weight:bold;">No Soal : <?php echo $_SESSION['nosoal']; ?></div></td>
</tr> <tr>
<td colspan="2"><?php echo $soal; ?><input type="hidden" name="txtidsoal" id="txtidsoal" value="<?php echo $data[idsoal]; ?>">
<input type="hidden" name="txtidpeserta" id="txtidpeserta" value="<?php echo $id;?>"> <input name="txtidujian" type="hidden" id="txtidujian" value="<?php echo $idujian; ?>"></td>
</tr> <tr>
<td width="3%"><input type="button" name="a" id="a" value="A" class="btn btn-primary cmdok"></td>
<td width="97%"><?php echo $jwba; ?></td> </tr>
<td><input type="button" name="b" id="b" value="B" class="btn btn-primary cmdok"></td>
<td><?php echo $jwbb; ?></td> </tr>
<tr>
<td><input type="button" name="c" id="c" value="C" class="btn btn-primary cmdok"></td>
<td><?php echo $jwbc; ?></td> </tr>
<tr>
<td><input type="button" name="d" id="d" value="D" class="btn btn-primary cmdok"></td>
<td><?php echo $jwbd; ?></td> </tr>
</tbody> </table> <?php
} ?> <p>
<div style="font-size:16px; margin-bottom:5px; margin-top:10px; border-top:solid 1px #B0B0B0;">No Soal</div>
<ul class="pagination" style="margin:0"> <?php
$no=0;
$qry=mysql_query("select * from tblpretest where
idpeserta='$id' and jabatan='$jabatan' order by idsoal asc"); while ($data=mysql_fetch_array($qry)){
<li><a href="#" class="cmdpilih" id="<?php echo $data['idpretest']; ?>"><?php echo $no; ?></a>
</li> <?php } ?> </ul> <br>
<a href="index.php?page=zindex" class="btn default btn-sm">Kembali</a>
</p> <?php } else{
$jabatan=$_SESSION['sesijabatan'];
echo '<div class="alert alert-danger" role="alert"> <h3>Petunjuk Soal:</h3>
<p>
Soal terdiri dari 3 kategori.<br>
Anda dapat beralih ke soal berikutnya secara otomatis ketika menjawab pertanyaan. <br>
Apabila soal sudah terjawab semua, anda dapat memperbaiki jawaban anda sesuai nomor urutannya, nomor urutannya berada pada sisi bawah.
</p> <p>
<a href="hitung.php?jabatan='.$jabatan.'" class="btn btn-primary btn-sm">Lihat Hasil</a>
<a href="index.php?page=ulang" class="btn warning btn-sm">Ulangi</a>
} ?> </div>
<script>
$(document).ready(function(e) { $('.cmdok').click(function(e) { var nilai=$(this).attr('id');
$.post('simpan.php', {
idujian:$('#txtidujian').val(), idsoal:$('#txtidsoal').val(),
idpeserta:$('#txtidpeserta').val(), nilai:nilai
}, function (data, status){ if (data==''){
} else{
$.alert({content:data}); }
}); });
$('.cmdpilih').click(function(e) { var nilai=$(this).attr('id');
$.post('pilih.php', { nilai:nilai
if (data==''){
} else{
$.alert({content:data}); }
}); }); });
</script>
27.
Tampilhasil.php
<?php error_reporting("E_ALL ^ E_NOTICE"); ?> <?php include '../cekuser.php'; ?>
<?php include '../koneksi.php'; ?> <?php
$idpeserta=$_SESSION['sesiidpeserta'];
$nama=$db->tampilrecord("tblpeserta", "idpeserta='$idpeserta'", "nama");
$temail=$db->tampilrecord("tblpeserta", "idpeserta='$idpeserta'", "email");
$jabatan=$_SESSION['sesijabatan'];
$pretest=$db->tampilrecord("tblpengaturan", "kriteria='PRETEST'", "nilai");
if ($pretest<=0){
echo "<script> document.location.href='../home.php'; </script>";
# # #
?>
<!doctype html> <html>
<head>
<meta charset="utf-8">
<title>PERANCANGAN APLIKASI SIMULASI PSIKOTEST BERBASIS WEB</title>
<link rel="stylesheet" href="../bootstrap/css/bootstrap.min.css"> <link rel="stylesheet" href="../style-home.css">
<link rel="stylesheet" href="../administrator/alert/css/jquery-confirm.css">
<script type="text/javascript"
src="../bootstrap/js/bootstrap.min.js"></script> <script src="../js/jquery.min.js"></script> <script src="../administrator/alert/js/jquery-confirm.js"></script>
</head>
<body> <?php
?>
<div id="wrapper">
<div class="row" style="padding:10px;">
<div class="panel panel-info"> <div class="panel-heading">
<h4 class="panel-title">Simulasi Psikotest</h4> </div>
<div class="panel-body">
<div class="col-md-6 col-xs-offset-3"> <!-- -->
<div class="panel panel-primary"> <div class="panel-heading">
<h4 class="panel-title">Hasil Ujian</h4> </div>
<div class="panel-body"> <?php
$nilai=$db->tampilrecord("tblpretesthasil",
"idpeserta='$idpeserta' and jabatan='$jabatan'", "nilai"); $status=$db->tampilrecord("tblpretesthasil",
"idpeserta='$idpeserta' and jabatan='$jabatan'", "stlulus"); $keterangan=$db->tampilrecord("tblpretesthasil",
"idpeserta='$idpeserta' and jabatan='$jabatan'", "hasil");
$status>=1 ? $stx="<div class='label label-success'>Lulus</div>" : $stx="<div class='label label-danger'>Tidak Lulus</div>";
if ($status>=1){
$ket="<div class='alert
alert-success'><h3>$keterangan</h3></div>"; }
$ket="<div class='alert alert-danger'><h4>$keterangan</h4></div>"; }
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table table-striped">
<tbody> <tr>
<td width="26%"><em>Nama</em></td>
<td width="74%"><?php echo $nama; ?></td> </tr>
<tr>
<td><em>Jabatan diuji</em></td> <td><?php echo $jabatan; ?></td> </tr>
<tr>
<td><em>Nilai</em></td>
<td><?php echo $nilai; ?></td> </tr>
<tr>
<td><em>Status</em></td> <td><?php echo $stx; ?></td> </tr>
<tr>
<td><em>Keterangan</em></td> <td><?php echo $ket; ?></td> </tr>
<tr>
<td><a href="index.php" class="btn primary btn-sm">Ulangi</a></td>
</tr> </tbody> </table>
</div> </div> <!-- --> </div> </div> </div>
</div> </div> </div>
</body> </html>
28.
Administrator/menu.php
<ul class="sidebar-menu">
<li class="header">MAIN NAVIGATION</li> <li class="active">
<a href="index.php">
<i class="fa fa-dashboard"></i> <span>Dashboard</span> <i class="fa fa-angle-left pull-right"></i>
<li class="header">PENGATURAN PESERTA</li>
<li><a href="index.php?page=peserta"><i class="fa fa-th"></i> <span>Data Peserta</span></a></li>
<?php
$pretest=$db->tampilrecord("tblpengaturan", "kriteria='PRETEST'", "nilai");
if ($pretest>=1){
echo '<li><a href="index.php?page=ujian"><i class="fa fa-circle-o text-red"></i> <span>Ujian</span></a></li>';
} else{ ?>
<li><a href="index.php?page=dataujian"><i class="fa fa-circle-o text-red"></i> <span>Data Ujian</span></a></li>
<?php } ?>
<li class="header">SOAL</li>
<li><a href="index.php?page=kategori"><i class="fa fa-circle-o text-red"></i> <span>Kategori</span></a></li>
<li><a href="index.php?page=jabatan"><i class="fa fa-circle-o text-red"></i> <span>Jabatan</span></a></li>
<li><a href="index.php?page=_soal"><i class="fa fa-circle-o text-yellow"></i> <span>Data Soal</span></a></li>
<li><a href="index.php?page=gambar"><i class="fa fa-circle-o text-yellow"></i> <span>File Gambar</span></a></li>
</ul>
29.
Administrator/isi.php
<?php
$sfile=$_GET["sfile"]; if ($page==''){
include 'page/index.php'; }
else{
if ($sfile=='' or !isset($sfile)){
if (file_exists('page/'.$page.'/index.php')){ include 'page/'.$page.'/index.php'; }
else{
include 'error404.html'; }
} else{
if (file_exists('page/'.$page.'/'.$sfile.'.php')){ include 'page/'.$page.'/'.$sfile.'.php'; }
else{
include 'error404.html'; }
} }
?>
30.
Asministrator/cetak.php
<?php
ini_set("memory_limit","1000M");
if ( isset( $_POST["html"] )) {
if ( get_magic_quotes_gpc() )
$_POST["html"] = stripslashes($_POST["html"]);
$dompdf = new DOMPDF();
$dompdf->load_html($_POST["html"]); $dompdf->set_paper("a4", "potrait"); $dompdf->render();
$dompdf->stream($namafile, array("Attachment" => false));
exit(0); }
?>
31.
Administrator/logout.php
<?php session_start(); ?> <?php
unset($_SESSION['sesipsikologiuser']); unset($_SESSION['sesipsikologipass']);
echo "<script> document.location.href='../index.php'; </script>";
Daftar Pustaka
Kristanto, A, 2003. Perancangan Sistem Informasi dan Aplikasinya, Yogyakarta:
Gava Media.
Betha, Sidik, Ir. 2007. Pemrograman Web dengan HTML.Bandung: Informatika
Bandung.
Adnyani, Nyoman. 2002. Kelemahan-Kelemahan Penerimaan Siswa SMP yang
Beracuan pada
NUAN. Makalah yang Disampaikan dalam Seminar Ilmiah
Universitas Mahasaraswati, September 2003.
Abdul, Kadir. 2003. Pengenalan Sistem Informasi. Andi : Yogyakarta.
Fadjar. 2002.
Pengenalan Nilai Budaya dan Etika Bagi Mahasiswa. Yogyakarta :
Yayasan
Penerbitan.
Kristanto, Andri. 2008.
Perancangan Sistem Informasi dan Aplikasinya. Gava Ilmu :
Yogyakarta.
Munandar, Imam dkk. 2012. Sistem Basis Data Akademik Sekolah Berbasis Web Pada
SMPN 5
Jakarta.
Betha, Sidik, Ir. 2007. Pemrograman Web dengan HTML.Bandung: Informatika
Bandung.
Adnyani, Nyoman. 2002. Kelemahan-Kelemahan Penerimaan Siswa SMP yang
Beracuan pada NUAN. Makalah yang Disampaikan dalam Seminar Ilmiah Universitas
Mahasaraswati,
September 2003.
Abdul, Kadir. 2003. Pengenalan Sistem Informasi. Andi : Yogyakarta.
Kristanto, Andri. 2008. Perancangan Sistem Informasi dan Aplikasinya. Gava Ilmu :
Yogyakarta.
BAB 3
ANALISA PERANCANGAN SISTEM
3.1
Perancangan Sistem
Perancangan Sistem adalah upaya suatu organisasi atau lembaga untuk memulai
memiliki suatu sistem yang lebih baik lagi dari sistem yang sebelumnya. Perancangan
sistem dilakukan setelah mendapat gambaran dengan jelas apa yang harus dikerjakan.
Tujuan dari perancangan sistem adalah untuk memenuhi kebutuhan pemakai (user)
mengenai gambaran yang jelas tentang perancangan sistem yang akan dibuat serta
diimplementasikan.Perancangan sistem adalah suatu upaya untuk membuat suatu
sistem yang baru atau memperbaiki sistem yang lama secara keseluruhan atau
memperbaiki sistem yang telah ada. Desain sistem secara umum mengidentifikasikan
komponen-komponen sistem informasi yang akan didesain secara terinci. Desain
terinci dimaksudkan untuk pemrogram komputer dan ahli teknik lainnya yang akan
mengimplementasikan sistem.
3.2
Data Flow Diagram (DFD)
Data Flow Diagram
(DFD) adalah suatu diagram yang menggunakan notasi-notasi
untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu
diagram yang menggambarkan hubungan antarsistem dengan entitas di luar sistem,
merupakan sistem secara keseluruhan. Diagram rinci menggambarkan sistem sebagai
jaringan kerja antara fungsi yang berhubungan satu dengan yang lain dengan aliran
penyimpanan data, model ini hanya memodelkan sistem dari sudut pandang fungsi.
Agar suatu sistem terstruktur, dapat dibuat suatu proses modeling dimana hasil dari
proses modeling tersebut berupa diagram konteks. Aplikasi perancangan simulasi
psikotest berbasis web bekerja dengan proses user terlebih dulu melakukan registrasi
sebelum memulai dan akan dientrykan administrator ke dalam sebuah database data
peserta. Dari
website tersebut akhirnya dirancang sebuah form pendaftaran simulasi
psikotest untuk dapat dilihat dan diisi oleh pihak pendaftar. Untuk lebih jelasnya dapat
dilihat pada gambar 3.2.1 diagram konteks berikut ini :
Peserta Administrator
Registrasi Ujian
Data Kategori Data Soal Data Peserta
Data Ujian Hasil Ujian
0.0
[image:60.595.98.517.438.634.2]Simulasi Psikotest
3.3
Data Flow Diagram
Level 0 Simulasi Psikotest
Administrator 1.0 Login Administrator 2.0 Data Peserta Peserta 3.0 Data Kategori 4.0 Data Jabatan 5.0 Data Soal 6.0 Registrasi Peserta 7.0 Login Peserta 8.0 Simulasi Ujian 9.0 Hasil Ujian D1 D2 D3 D4 D5Username & Password
Verifikasi Data Password
Verifikasi Password Data Kategori Data Kategori Data Jabatan Data Jabatan Data Peserta Verifikasi Data
[image:61.595.89.528.145.615.2]Email & Password Data Peserta Data Peserta Data Peserta Data Soal Data Kategori Data Jabatan Daftar Soal D6 Jawaban Hasil Jabawan Nilai Hasil Ujian Tabel Login Tabel Peserta Tabel Kategori Tabel Soal Tabel Jawaban Tabel Jabatan
3.4
Data Flow Diagram
Level 1 Simulasi Psikotest
Peserta
8.1 Pilih Kategori
8.2 Acak Soal 8.3
Ujian
8.4 Hasil Ujian
D8
D8
D8
Kategori
Data Kategori
[image:62.595.101.499.179.463.2]Soal Berkategori Soal Berkategori
Soal Acak Jawaban
Jawaban
Hasil Ujian Hasil Ujian
Soal
Soal
Tabel kategori
Tabel Soal
Tabel Jawaban
Gambar 3.4.1 DFD Level 1
3.5
Entity Relationship Diagram
(ERD)
Berikut ini adalah gambaran dari
Entity Relationship Diagram (ERD) dari admin
simulasi psikotest. Berikut merupakan penjelasan ERD, yaitu dimulai dari entitas table
peserta. Entitas table peserta memiliki sepuluh atribut yaitu id peserta, nama, jenis
kelamin, tempat, tanggal lahir, alamat, pendidikan, email, password dan waktu. Jika
user memiliki atribut tersebut maka admin akan menyajikan soal ke entitas peserta. Di
kategori dan di dalam entitas tabel jawaban ada beberapa atribut, yaitu id jawaban, id
ujian, id peserta, id soal, jawab, dan kategori. Di dalam tabel jawaban, jawaban akan
disimpan. Untuk lebih jelasnya dapat dilihat pada gambar 3.5.1
Entity Relationship
Diagram (ERD) berikut ini:
[image:63.595.80.528.234.423.2]tblpeserta tblsoal tbljawaban menyajikan menyimpan alamat email nama jabatan idsoal idpeserta idjawaban menyajikan tblkategori kategori 1 1 idpeserta waktu jk tempat tgllahir pendidika n pass soal kategori idsoal kategori idujian jwb n n 1 n
Gambar 3.5.1 Entity Relationship Diagram (ERD)
3.6
Perancangan
Database
Tabel 3.1 Tabel Admin
No
Field Nama
Data Tipe
Size
Keterangan
1
2
user
pass
Varchar
Varchar
50
50
Username
Password
Tabel 3.2 Tabel Gambar
[image:64.595.95.456.255.339.2] [image:64.595.96.456.393.450.2]No
Field Nama
Data Tipe
Size
Keterangan
1
2
idgambar
gambar
Integer
Varchar
11
200
Id Gambar
Nama Gambar
Tabel 3.3 Tabel Jabatan
[image:64.595.93.453.501.726.2]No
Field Nama
Data Tipe
Size
Keterangan
1.
jabatan
Varchar
50
Jabatan
Tabel 3.4 Tabel Jawaban
Tabel 3.5 Tabel Kategori
[image:65.595.92.458.224.309.2]No
Field Nama
Data Tipe
Size
Keterangan
1.
kategori
Varchar
50
Kategori
Tabel 3.6 Tabel Pengaturan
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
kriteria
nilai
Varchar
Text
200
-
Kriteria
Nilai
Tabel 3.7 Tabel Peserta
[image:65.595.93.455.366.673.2]Tabel 3.8 Tabel Test
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
5.
6.
7.
idtest
idpeserta
idsoal
kategori
jabatan
jwb
st
Integer
Integer
Integer
Varchar
Varchar
Integer
Integer
11
11
11
50
50
1
1
Kriteria
Nilai
Soal
Kategori
Jabatan
Jawaban
Jawaban Benar / Salah
Tabel 3.9 Tabel Hasil Test
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
5.
6.
7.
8.
idhasiltest
idpeserta
jabatan
hasil
nilai
waktu
st
stlulus
Integer
Integer
Varchar
Varchar
double
Integer
Integer
Integer
11
11
50
255
-
11
1
1
Id Hasil Test
Id Peserta
Jabatan
Hasil
Nilai
Waktu
[image:66.595.93.457.418.671.2]Tabel 3.10 Tabel Pengaturan Test
No
Field Nama
Data
Tipe
Size
Keterangan
1.
2.
3.
4.
5.
6.
idtestpengaturan
jabatan
kategori
jlh
lulus
waktu
Integer
Varchar
Varchar
Integer
Integer
Integer
11
50
50
11
11
11
Id Pengaturan Test
Jabatan
Kategori
Jumlah
Lulus
Waktu
Tabel 3.11 Tabel Soal
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
idsoal*
kategori
jabatan
soal
Integer
Varchar
Varchar
Text
11
50
50
-
Id Soal
Kategori
Jabatan
Soal
Tabel 3.12 Tabel Ujian
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
5.
idujian
keterangan
tgl
st
waktu
Integer
Varchar
Date
Integer
Integer
11
255
-
1
11
Id Ujian
Keterangan
Tanggal
Jawaban Benar / Salah
[image:67.595.93.457.584.754.2]6.
7.
8.
cwaktu
hasil
jabatan
Integer
Varchar
Varchar
11
255
50
Cek Waktu
Hasil
Jabatan
Tabel 3.13 Tabel Ujian Kategori
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
5.
6.
idujiankategori
idujian
kategori
jlhsoal
jlhlulus
waktu
Integer
Integer
Varchar
Integer
Integer
Integer
11
11
50
11
11
11
Id Ujian Kategori
Id Ujian
Kategori
Jumlah Soal
Jumlah Lulus
[image:68.595.94.457.225.421.2]Waktu
Tabel 3.14 Tabel Ujian Peserta
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
5.
6.
idujianpeserta
idujian
idpeserta
ket
nilai
lulus
Integer
Integer
Integer
Varchar
Integer
Integer
11
11
11
255
11
1
Id Ujian Peserta
Id Ujian
Id Peserta
Keterangan
Nilai
Tabel 3.15 Tabel Ujian Waktu
No
Field Nama
Data Tipe
Size
Keterangan
1.
2.
3.
4.
5.
6.
idujianwaktu
idpeserta
idujian
kategori
st
waktu
Integer
Integer
Integer
Varchar
Integer
Integer
11
11
11
50
11
1
Id Ujian Waktu
Id Peserta
Id Ujian
Kategori
Jawaban Benar / Salah
Waktu
3.7
Flowchart
Flowchart
adalah
sekumpulan
simbol-simbol
yang
menunjukkan
atau
menggambarkan rangkaian kegiatan-kegiatan program dari awal hingga akhir,
flowchart juga digunakan untuk menggambarkan urutan langkah-langkah pekerjaan di
suatu algoritma. Di dalam web ini ada beberapa
flowchart, yaitu flowchart menu
utama,
flowchart administrator, dan lain-lain. Berikut ini merupakan penjelasan
program Perancangan Aplikasi Simulasi Psikotest Berbasis Web berikut ini.
3.7.1
Flowchart
Menu
Admin
Mulai
Tampilan Halaman Admin
Menu Data Peserta
Menu Ujian
Menu Kategori
Menu Jabatan Data
Peserta
Pengatura n Soal
KategoriSoal
Jenis Jabatan
Keluar
Selesai Admin
S
B S
B
B S
S
B S
B
Data Soal
Komentar S
[image:70.595.107.501.77.538.2]B
Gambar 3.7.1 Flowchart Menu Administrator
3.7.2
Flowchart
Menu Kategori
Mulai
Kategori
Tampilan Kategori
Tambah Kategori
Hapus Kategori Simpan
Kategori
Kategori Telah Dihapus
Selesai
S
B
[image:71.595.232.374.105.540.2]B
Gambar 3.7.2 Flowchart Menu Kategori Soal
3.7.3
Flowchart
Menu Jabatan
Mulai
Jabatan
Tampilan Jabatan
Tambah Jabatan
Hapus Jabatan Simpan
Jabatan
Jabatan Telah Dihapus
Selesai
S
B
[image:72.595.232.374.110.546.2]B
3.7.4
Flowchart
Menu Soal
Berikut ini merupakan penjelasan
flowchart
menu soal, dimana dalam menu soal
terdapat soal-soal berdasarkan kategori soal yang telah disimpan. Admin dapat
menambah dan menghapus jenis soal. Berikut merupakan flowchart menu soal.
Mulai
Soal
Daftar Jabatan
Pilih Materi
Tambah Soal
Edit Soal Simpan Soal
Simpan Hasil Editan
Keluar
Selesai B
S S
Pilih Kategori Soal
B S
S
B
S
B Hapus Soal
Data Telah Dihapus
S
[image:73.595.101.502.189.604.2]B
Gambar 3.7.4 Flowchart Menu Soal
Pada form ini terdapat login Admin, Registrasi user dan Login user. Admin akan
[image:74.595.111.509.195.420.2]langsung login ke halaman admin jika melakukan login system. Untuk lebih
jelasnya dapat dilihat pada gambar tampilan berikut ini.
Gambar 3.7.5 Tampilan Halaman Utama
2.
Tampilan Menu Registrasi
Sebelum user memulai simulasi, terlebih dahulu user melakukan registrasi. Jika
Gambar 3.7.6 Tampilan Menu Registrasi
3.
Tampilan Menu Jabatan
Di dalam tampilan menu jabatan, terdapat beberapa tingkatan jabatan yang akan
dipilih user yaitu Manager, Staff dan Supervisor serta diberikan petunjuk soal.
Jadi, sebelum user melakukan soal simulasi, simaklah dengan baik petunjuk soal
yang telah ditampilkan. Setelah itu user dapat langsung mengerjakan soal simulasi.
[image:75.595.111.509.500.722.2]4.
Tampilan Simulasi
Di dalam tampilan ini, user dapat langsung mengerjakan soal simulasi setelah
memilih jabatan yang diinginkan. Terdapat timer pada simulasi psikotest
[image:76.595.98.494.221.478.2]sehingga user dapat mengelola waktu mengerjakan soal
–
soal simulasi dengan
baik.
BAB 4
IMPLEMENTASI SISTEM
4.1
Pengertian Implementasi Sistem
Implementasi sistem adalah suatu prosedur yang dilakukan untuk menyelesaikan
sistem yang ada dalam dokumen rancangan sistem yang telah disetujui dan telah diuji,
menginstal dan menggunakan sistem baru yang telah diperbaiki. Adapun
langkah-langkah yang dibutuhkan dalam implementasi sistem adalah:
1.
Mendapatkan
software dan
hardware yang tepat serta sesuai untuk merancang
website.
2.
Menyelesaikan rancangan sistem.
3.
Menulis, menguji, mengontrol, dan mendokumentasikan website.
4.
Mendapatkan persetujuan.
4.2
Tujuan Implementasi Sistem
Adapun tujuan implementasi sistem adalah sebagai berikut:
1.
Mengkaji rangkaian sistem baik dari segi
software
maupun
hardware
sebagai
sarana pengolahan data dan penyajian informasi.
3.
Memastikan pengujung dapat mengoprasikan dengan mudah terhadap sistem yang
baru dan mendapat informasi yang baik dan jelas.
4.
Memastikan bahwa yang telah berjalan dengan lancer dan melakukan instalasi secara
benar
.
4.3
Komponen Sistem
Komponen-komponen system yang dibutuhkan dalam membangun aplikasi ini
diantaranya adalah:
a.
Hardware
Hardware
adalah suatu komponen yang sangat dibutuhkan dalam mewujudkan sistem
yang diusulkan. Dalam hal ini penulis merinci spesifikasi komponen hardware yaitu:
1.
Sistem Operasi menggunakan windows 7
2.
PC dengan processor intel inside
3.
RAM dengan kapasitas 2.00 GB.
4.
Flash disk 16 GB
5.
Monitor super VGA.
6.
Memory minimal 128MB.
7.
Keyboard.
8.
Mouse.
b.
Software
2.
Internet explorer, Mozila firefox, Google Chrome sebagai browser.
3.
Xampp versi 3.0.12
4.
Apache 2.2.18
5.
PHP versi 5.4.4
6.
MySQL 5.5.25a
c.
Brainware
Brainware
adalah semua pihak yang bertanggung jawab dalam pengembangan
sistem informasi, pemrosesan, dan penggunaan keluaran sistem informasi.
Brainware dalam sistem informasi terbagi 3 yaitu:
1.
Sistem Analis :
orang yang menganalisa sistem dengan mempelajari
masalah-masalah yang timbul dan menentukan kebutuhan pemakai dan mengidentifikasi
pemecahan yang beralasan.
2.
Programmer :
orang yang membuat system dengan menggunakan salah satu
bahasa pemrograman yang dikuasai.
3.
Operator : orang yang memakai sistem.
Ketika telah selesai mengerjakan tahap perancangan sistem, baik dalam merancang
tabel-tabel didalam
database dengan menggunakan
php Myadmin maupun dalam
merancang halaman-halaman website. Kini program tersebut dapat dijal