• Tidak ada hasil yang ditemukan

Pada Bab IV Hasil dan Pembahasan ini akan dipaparkan terkait seluruh aplikasi yang sudah dibuat, mulai dari interface serta coding.

4.1. M enu Utama

Desain utama atau tampilan aplikasi pertama kali ketika seluruh

user membuka web. Halaman web Sistem Informasi Pendaftaran dan Penilaian

Praktikum dapat diakses di alamat http://localhost/ta atau http://www.laboratory.if.upnjatim.ac.id/. Pada halaman awal ada beberapa informasi atau berita dan profil empa laboratorium yang ada di Teknik Informatika UPN “Veteran” Jatim.

Untuk login user dapat mengisi no id dan password pada area login kanan atas atau dengan mengakses menu pendaftaran. Form menu pendaftaran akan nampak seperti gambar 4.2.

Gambar 4.2. Halaman Pendaftaran

Jika login sukses, maka akan ada ucapan selamat datang seperti pada gambar 4.3. Lalu sistem akan menampilkan menu menurut level user yang login.

Gambar 4.3. Selamat Datang

Sedangkan jika login gagal, akan muncul peringantan seperti gambar 4.4. Setelah tombol oke ditekan, maka sistem akan kembali ke halaman pendaftaran.

Gambar 4.4. Peringatan Gagal Login

Source Code untuk login dan mengecekan hak akses adalah sebagai berikut : if ($_GET[module]=='login'){

$pass=md5($_POST['password']);

$login=mysql_query("SELECT * FROM userr WHERE id_user='$id' AND pass='$pass'");

$ketemu=mysql_num_rows($login); $r=mysql_fetch_array($login);

echo "<div class='center_title_bar'>Login :</div>"; // Apabila username dan password ditemukan

if ($ketemu > 0){ session_start(); $_SESSION[id] = $r[0]; $_SESSION[nama] = $r[1]; $_SESSION[level] = $r[2]; conDua();

$sql=mysql_query("Select tahun, semester from tahun_ajaran where aktif=1");

$data2=mysql_num_rows($sql); if($data2==0 && $r[2]==4){

echo "<script>window.alert('Tahun Ajaran Belum di Set')

window.location=('media.php?module=new-season')</script>";

}

else if($data2==0 && $r[2]<=4){

echo "<script>window.alert('Maaf, sistem belum siap digunakan.')

window.location=('media.php?module=home')</script>"; }

else{echo "<script>window.alert('Selamat datang $r[1]') window.location=('media.php?module=home')</script>";

} conSatu(); }

4.2. M enu Kepala Labor atorium

Pada saat user login dengan hak akses kepala laboratorium, maka tampilan awalnya akan nampak seperti gambar 4.5. Ada beberapa sub menu yang ada pada menu User, Praktikum, Sesi, Nilai dan Berita. Menu User memiliki sub menu insert user, lihat user dan import mahasiswa. Menu praktikum memiliki sub menu insert, lihat dan laporan praktikum. Menu sesi memiliki sub menu insert dan lihat sesi. Menu nilai memiliki sub menu insert, lihat dan rekap nilai. Menu berita memiliki sub menu insert dan lihat berita.

Gambar 4.5. Menu Home Kalab

Untuk memasukkan data praktikum, pilih menu praktikum > Insert Praktikum. Tampilannya akan tampak seperti pada gambar 4.6.

Gambar 4.6. Form Insert Praktikum

Source Code untuk simpan praktikum baru adalah sebagai berikut : if ($_GET[module]=='insert-praktikum-aksi'){ $id_prak=trim($_POST['kode']); $nama_prak=trim($_POST['nama']); $jum_mod=trim($_POST['jumMod']); $ka_lab=trim($_POST['kalab']); $tgl_du=trim($_POST['tglDU']); if (empty($id_prak)){

echo "Anda belum mengisikan Kode Praktikum<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; }

elseif (empty($nama_prak)){

echo "Anda belum mengisikan Nama Praktikum<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; }

elseif ($ka_lab=='0'){

echo "Anda belum memilih Kepala Laboratorium<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; }

else{

mysql_query(" INSERT INTO praktikum(id_prak, nama_prak, jum_modul, tgl_daftar)VALUES

('$_POST[kode]','$_POST[nama]','$_POST[jumMod]','$_POST[tglDU]');" );

mysql_query(" INSERT INTO hak_akses(id_prak, id_user) VALUES

('$_POST[kode]','$_POST[kalab]');");

mysql_query("INSERT INTO modul VALUES ('$id_prak','brief','Briefing');");

for ($i=1; $i<=$jum_mod; $i++){

mysql_query("INSERT INTO modul VALUES ('$id_prak','mod$i','Modul $i');");}

mysql_query("INSERT INTO modul VALUES ('$id_prak','final','Final Project');");}

echo "<script>window.alert('Data Praktikum telah tersimpan') window.location=('media.php?module=lihat-prak')</script>"; }

Menu lihat praktikum akan nampak seperti pada gambar 4.7. Dalam menu ini akan ditampilkan semua data praktikum yang ada pada database.

Gambar 4.7. Menu Lihat Praktikum

Link edit akan mengarahkan sistem ke form edit praktikum seperti pada

gambar 4.8. Sedangkan hapus digunakan untuk menghapus data praktikum.

Source Code untuk edit praktikum adalah sebagai berikut : if ($_GET[module]=='edit-praktikum-aksi' ){ $id_prak=trim($_POST['kode']);

$jum_mod=trim($_POST['jumMod']);

$sql=mysql_query("SELECT id_user, nama_user FROM userr WHERE levell='4' AND id_user=(SELECT id_user FROM hak_akses WHERE id_prak='$id')");

$k=mysql_fetch_array($sql); if($k[0]!=$_POST[kalab]){

mysql_query("DELETE FROM hak_akses WHERE id_prak='$_POST[kode]'");}

mysql_query("UPDATE praktikum SET nama_prak='$_POST[nama]', jum_modul='$_POST[jumMod]', tgl_daftar='$_POST[tglDU]' WHERE id_prak='$_POST[kode]'");

mysql_query("INSERT INTO hak_akses (id_prak, id_user) VALUES ('$_POST[kode]', '$_POST[kalab]')");

mysql_query("DELETE FROM modul where id_prak='$id_prak';"); mysql_query("INSERT INTO modul VALUES

('$id_prak','brief','Briefing');");

for ($i=1; $i<=$jum_mod; $i++){

mysql_query("INSERT INTO modul VALUES ('$id_prak','mod$i','Modul $i');");

}

mysql_query("INSERT INTO modul VALUES ('$id_prak','final','Final Project');");

echo "<script> window.alert('Data Praktikum Telah di Update') window.location=('media.php?module=lihat-prak')</script>";

}

Menu laporan praktikum dapat diakses setelah proses praktikum selesai. Dalam menu ini terdapat beberapa laporan yang dapat dilihat pada gambar 4.9.

Form menu Insert User akan tampak seperti pada gambar 4.10. Menu ini

digunakan untuk memasukkan data user dengan level dosen atau kepala laboratorium saja.

Gambar 4.10. Form Menu Insert User

Source code untuk proses input user ini adalah :

if ($_GET[module]=='insert-user-aksi'){ $id_user=trim($_POST['kode']); $nama=trim($_POST['nama']); $pass=md5($_POST['pass']); $level=trim($_POST['levell']); if (empty($id_user)){

echo "Anda belum mengisikan Kode user<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; }

elseif (empty($nama)){

echo "Anda belum mengisikan Nama User<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; } elseif (empty($pass)){

echo "Anda belum mengisikan password<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; } elseif (empty($level)){

echo "Anda belum memilih tingkat user<br />

<a href=javascript:history.go(-1)><b>Ulangi Lagi</b>"; } else{

mysql_query(" INSERT INTO userr(id_user, nama_user, levell, pass)VALUES('$_POST[kode]','$_POST[nama]','$_POST[levell]','$pass' );");

echo "<script>window.alert('User $_POST[nama] telah di tambahkan') window.location=('media.php?module=lihat-user')</script>";}

}

Untuk memasukkan data user level mahasiswa atau asisten, gunakan menu

import mahasiswa seperti pada gambar 4.11. Sebelum mengakses menu tersebut,

Gambar 4.11. Import Data Mahasiswa

Menu Lihat User akan tampak seperti gambar 4.12. Semua data user akan muncul pada menu ini. Link edit akan mengarahkan sistem ke form edit user sedangkan form hapus user, akan menghapus data user yang dipilih.

Gambar 4.12. Menu Lihat User

Untuk memasukkan data sesi, gunakan menu sesi > insert sesi seperti pada gambar 4.13. Sebelum mengakses menu ini, pastikan data praktikum telah dibuat. Untuk dosen pj dan asisten tidak harus ditentukan saat pembuatan sesi.

Gambar 4.13. Form menu Insert Sesi Source code untuk proses input sesi adalah sebagai berikut : if ($_GET[module]=='insert-sesi-aksi'){

empty($_POST[id_prak])){

if(empty($_POST[kapasitas])){echo "Anda belum mengisikan kapasitas sesi<br />";}

if(empty($_POST[kode])){echo "Anda belum mengisikan kode sesi<br />";}

if(empty($_POST[id_prak])){echo "Anda belum memilih praktikum<br />";}

echo "<a href=javascript:history.go(-1)><b>Kembali</b></a>"; } else {

mysql_query(" INSERT INTO sesi(id_prak, id_sesi, hari, jam, kapasitas, ast_1, ast_2, pj, tempat)values

('$_POST[id_prak]','$_POST[kode]','$_POST[hari]','$_POST[jam]', '$_POST[kapasitas]','$_POST[ast_1]','$_POST[ast_2]','$_POST[pj]',' $_POST[tempat]');");

echo "<script>window.alert('Praktikum $_POST[id_prak] Sesi $_POST[kode] telah ditambahkan')

window.location=('media.php?module=lihat-sesi')</script>"; }

}

Menu lihat sesi akan menampilkan data sesi seperti pada gambar 4.14.

Link edit akan mengarahkan sistem ke form edit sesi sedangkan form hapus, akan

menghapus data sesi yang dipilih.

Gambar 4.14. Menu Lihat Sesi

Untuk memasukkan nilai, pilih menu nilai > insert nilai. Saat memilih menu tersebut, akan muncul daftar sesi yang menjadi tanggung jawab user yang

login seperti pada gambar 4.15.

Setelah memilih sesi, pilih modul yang akan dimasukkan nilainya. Untuk hak akses dosen penanggung jawab akan muncul satu kolom nilai tes awal seperti gambar 4.16. Sedangkan untuk hak akses asisten akan muncul tiga kolom nilai disiplin, praktikum dan laporan resmi seperti gambar 4.17.

Gambar 4.16. Form Insert Nilai Dosen PJ

Gambar 4.17. Form Insert Nilai Asisten

Source code untuk insert nilai adalah :

Untuk asisten :

if ($_GET[module]=='asisten'){ error_reporting(0);

$sesi=$_REQUEST['sesi']; $prak=$_REQUEST['prak']; $dis=$_REQUEST['dis']; $praktek=$_REQUEST['praktek']; $lap=$_REQUEST['lap']; $modul=$_POST['modul']; $id_user=$_SESSION['id'];

$tampil=mysql_query ("select a.id_user, b.nama_user FROM jadwal_mhs a, userr b where a.id_sesi='$sesi' && a.id_prak='$prak' && a.id_user=b.id_user order by id_user ASC");

$no=0;

while ($data=mysql_fetch_array($tampil)){

$cari=mysql_query("SELECT * FROM nilai WHERE id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'");

$ketemu=mysql_num_rows($cari); if ($ketemu > 0){

mysql_query("UPDATE nilai SET disiplin='$dis[$no]', praktek='$praktek[$no]', lapres='$lap[$no]' where id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'"); $sql=mysql_query("SELECT tes, disiplin, praktek, lapres FROM nilai WHERE id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'");

$data2=mysql_fetch_array($sql);

$totale=$data2[0]+$data2[1]+$data2[2]+$data2[3]+$data2[4];

mysql_query("UPDATE nilai SET total=$totale where id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'"); }

else{

$totalnilai=$dis[$no]+$praktek[$no]+$lap[$no];

mysql_query("INSERT INTO nilai (ID_PRAK, ID_MODUL, ID_USER, TES, DISIPLIN, PRAKTEK, LAPRES, TOTAL) VALUES ('$prak', '$modul', '$data[0]', 0, '$dis[$no]', '$praktek[$no]', '$lap[$no]', '$totalnilai')");

} $no++; }

echo "<script>window.alert('Data telah tersimpan') window.location=('media.php?module=insert-nilai-detail&sesi=$sesi&prak=$prak&modul=$modul')</script>"; } Untuk Dosen PJ : if ($_GET[module]=='pj'){ error_reporting(0); $sesi=$_REQUEST['sesi']; $prak=$_REQUEST['prak']; $nilai=$_REQUEST['tes']; $modul=$_POST['modul']; $id_user=$_SESSION['id'];

jadwal_mhs a, userr b where a.id_sesi='$sesi' && a.id_prak='$prak' && a.id_user=b.id_user order by id_user ASC");

$no=0;

while ($data=mysql_fetch_array($tampil)){

$cari=mysql_query("SELECT * FROM nilai WHERE id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'");

$ketemu=mysql_num_rows($cari); if ($ketemu > 0){

mysql_query("update nilai set tes='$nilai[$no]' where id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'"); $sql=mysql_query("SELECT tes, disiplin, praktek, lapres FROM nilai WHERE id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'");

$data2=mysql_fetch_array($sql);

$totale=$data2[0]+$data2[1]+$data2[2]+$data2[3]+$data2[4];

mysql_query("UPDATE nilai SET total=$totale where id_user='$data[0]' and id_modul='$modul' and id_prak='$prak'");} else{

mysql_query("INSERT INTO nilai (ID_PRAK, ID_MODUL, ID_USER, TES, DISIPLIN, PRAKTEK, LAPRES, TOTAL) VALUES ('$prak', '$modul', '$data[0]', '$nilai[$no]', 0,0,0,0)");}

$no++; }

echo "<script>window.alert('Data telah tersimpan') window.location=('media.php?module=insert-nilai-detail&sesi=$sesi&prak=$prak&modul=$modul')</script>";}

Menu lihat nilai dapat diakses oleh semua tingkat user. Setelah mengakses menu ini, akan muncul pilihan sesi sesuai hasil daftar ulang untuk mahasiswa, sesuai hak akses bagi kepala laboratorium, dosen dan asisten. Nilai yang ditampilkan dalam menu ini adalah nilai total dari tes awal, disiplin, praktek dan laporan resmi seperti yang dapat terlihat pada gambar 4.18.

Untuk melihat detail nilai per modulnya, dapat menekan header yang berwarna biru pada kolom nilai. Setelah menekan header modulnya, akan muncul nilai tes awal, disiplin, praktek dan laporan resmi seperti pada gambar 4.19.

Gambar 4.18. Menu Lihat Nilai

Gambar 4.19. Menu Lihat Nilai Permodul

Hasil menu lihat nilai dapat dijadikan file pdf dengan menekan tombol

export pdf. Hasil dari menu export pdf tersebut seperti pada gambar 4.20. Source code untuk menu export pdf adalah sebagai berikut :

<?php require('fpdf.php'); class PDF extends FPDF { function Header() { //Logo $sesi=$_REQUEST['sesi'];

$nama=$_REQUEST['nama']; $tahun=$_REQUEST['tahun']; $sem=$_REQUEST['sem'];

$this->Image('logo.png',10,8,20); //lihat fungsi Image() di fpdf $this->SetFont('Arial','B',12);

//Move to the right

$this->Cell(40); //lihat fungsi Cell() di fpdf $this->Cell(200,10,"Nilai Praktikum $nama - Sesi : $sesi",0,0,'C');

$this->Ln(6); $this->Cell(40);

$this->Cell(200,10,"Program Study Teknik Informatika - FTI UPN Veteran Jatim",0,0,'C');

$this->Ln(6); $this->Cell(40);

$this->Cell(200,10,"Semester $sem Tahun Ajaran $tahun",0,0,'C'); $this->Ln(10); } function LoadData() { $sesi=$_REQUEST['sesi']; $prak=$_REQUEST['prak']; $mod=$_REQUEST['modul']; //Read data from database $user = "root";

$pass = "root";

//membuka koneksi ke database

$link = mysql_connect( "localhost", $user, $pass ); mysql_select_db('jalan',$link);

if ($mod==8)$query = "SELECT a.id_user, LEFT(a.nama_user, 15) as nama, b.total as brif, c.tes, c.praktek, c.disiplin, c.lapres, c.total,

d.tes, d.disiplin, d.praktek, d.lapres, d.total, e.tes, e.disiplin, e.praktek, e.lapres, e.total, f.tes, f.disiplin, f.praktek, f.lapres, f.total, g.tes, g.disiplin, g.praktek, g.lapres, g.total, h.tes, h.disiplin, h.praktek, h.lapres, h.total, g.tes, i.disiplin, i.praktek, i.lapres, i.total, h.tes, j.disiplin, j.praktek, j.lapres, j.total, k.total,

LEFT(l.semua, 4) as semua, l.huruf

FROM (select a.id_user, nama_user from userr a, jadwal_mhs b where b.id_prak='$prak' AND b.id_sesi='$sesi' and a.id_user=b.id_user) a,

(select id_user as npm, total from nilai where id_prak='$prak' and id_modul='brief') b,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod1') c,

nilai where id_prak='$prak' and id_modul='mod2') d,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod3') e,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod4') f,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod5') g,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod6') h,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod7') i,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod8') j,

(select id_user as npm, total from nilai where id_prak='$prak' and id_modul='final') k,

(SELECT nilai.id_user as npm, avg (total) as semua, if (avg(total) >= 80,'A',

if (avg (total) >= 75,'A-', if (avg (total) >= 70,'B+', if (avg (total) >= 65,'B', if (avg (total) >= 60,'B-', if (avg (total) >= 55,'C+', if (avg (total) >= 50,'C', if (avg (total) >= 45,'C-', if (avg (total) >= 35,'D+',

if (avg (total) >= 25,'D','E')))))))))) as huruf

FROM `nilai`join jadwal_mhs on nilai.id_user = jadwal_mhs.id_user WHERE jadwal_mhs.id_prak='$prak' and nilai.id_prak='$prak' and id_sesi='$sesi' group by nilai.id_user) l

WHERE a.id_user=b.npm and a.id_user=c.npm and a.id_user=d.npm and a.id_user=e.npm and a.id_user=f.npm and a.id_user=g.npm and

a.id_user=h.npm and a.id_user=i.npm and a.id_user=j.npm and a.id_user=k.npm and a.id_user=l.npm";

if ($mod==6)$query = "SELECT a.id_user, LEFT(a.nama_user, 15) as nama, b.total as brif, c.tes, c.disiplin, c.praktek, c.lapres, c.total,

d.tes, d.disiplin, d.praktek, d.lapres, d.total, e.tes, e.disiplin, e.praktek, e.lapres, e.total, f.tes, f.disiplin, f.praktek, f.lapres, f.total, g.tes, g.disiplin, g.praktek, g.lapres, g.total, h.tes, h.disiplin, h.praktek, h.lapres, h.total, k.total,

LEFT(l.semua, 4) as semua, l.huruf

FROM (select a.id_user, nama_user from userr a, jadwal_mhs b where b.id_prak='$prak' AND b.id_sesi='$sesi' and a.id_user=b.id_user) a,

(select id_user as npm, total from nilai where id_prak='$prak' and id_modul='brief') b,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod1') c,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod2') d,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod3') e,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod4') f,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod5') g,

(select id_user as npm, tes, disiplin, praktek, lapres, total from nilai where id_prak='$prak' and id_modul='mod6') h,

(select id_user as npm, total from nilai where id_prak='$prak' and id_modul='final') k,

(SELECT nilai.id_user as npm, avg (total) as semua, if (avg(total) >= 80,'A',

if (avg (total) >= 75,'A-', if (avg (total) >= 70,'B+', if (avg (total) >= 65,'B', if (avg (total) >= 60,'B-', if (avg (total) >= 55,'C+', if (avg (total) >= 50,'C', if (avg (total) >= 45,'C-', if (avg (total) >= 35,'D+',

if (avg (total) >= 25,'D','E')))))))))) as huruf

FROM `nilai`join jadwal_mhs on nilai.id_user = jadwal_mhs.id_user WHERE jadwal_mhs.id_prak='$prak' and nilai.id_prak='$prak' and id_sesi='$sesi' group by nilai.id_user) l

WHERE a.id_user=b.npm and a.id_user=c.npm and a.id_user=d.npm and a.id_user=e.npm and a.id_user=f.npm and a.id_user=g.npm and

a.id_user=h.npm and a.id_user=k.npm and a.id_user=l.npm"; $result = mysql_query( $query )

or die("Select error".mysql_error()); //Baca dari tabel //Tutup koneksi database

mysql_close( $link ); $data=array();

$y=0;

while ( $a_row = mysql_fetch_row( $result ) ) { $x=0;

foreach ( $a_row as $field ) {

$data[$y][$x]=stripslashes($field) ; $x++; } $y++; } return $data; } //Simple table function BasicTable($header,$data) { $ast1=$_REQUEST['ast1']; $ast2=$_REQUEST['ast2'];

$pj=$_REQUEST['pj']; $mod=$_REQUEST['modul']; //Header $this->SetFont('Arial','B',9); $header= $this->Cell(18,10,'NPM',1, 0,'C'); $this->Cell(30,10,'Nama',1, 0,'C'); $this->Cell(7,10,'Bri',1, 0,'C'); for ($i=1; $i<=$mod; $i++){

$this->Cell(25,5,"Modul $i",1, 0,'C');} $this->Cell(7,10,'FP',1, 0,'C'); $this->Cell(14,5,'Total',1, 1,'C'); $this->Cell(18,5,'',0, 0,'C'); $this->Cell(30,5,'',0, 0,'C'); $this->Cell(7,5,'',0, 0,'C'); for ($i=1; $i<=$mod; $i++){ $this->Cell(5,5,'T',1, 0,'C'); $this->Cell(5,5,'D',1, 0,'C'); $this->Cell(5,5,'P',1, 0,'C'); $this->Cell(5,5,'L',1, 0,'C'); $this->Cell(5,5,'To',1, 0,'C');} $this->Cell(7,5,'',0, 0,'C'); $this->Cell(7,5,'Tot',1, 0,'C'); $this->Cell(7,5,'H',1, 0,'C'); $this->Ln(); //Data foreach($data as $row) {foreach ($row as $col)

$this->SetFont('Arial','',8); $w = array(18, 30, 7);

$mak=($mod*5)+5;

for ($i=3; $i<=$mak; $i++){ if($mak-$i<3){$w[$i]= 7;} else

$w[$i]= 5; }

$a = (count($row)); for($i=0; $i<$a; $i++)

$this->Cell($w[$i],'5',$row[$i],1); $this->Ln(); } $this->Cell(10); $this->SetFont('Arial','',10); $this->Cell(65,10,"Asisten 1 :",0,0,'L'); $this->Cell(110,10,"Asisten 2 :",0,0,'L'); $this->Cell(70,10,"Penanggung Jawab :",0,0,'L'); $this->Ln(20); $this->Cell(10); $this->Cell(65,10,"$ast1",0,0,'L');

$this->Cell(110,10,"$ast2",0,0,'L'); $this->Cell(70,10,"$pj",0,0,'L'); } } $pdf=new PDF(); //Column titles //Data loading $header=array(); $data=$pdf->LoadData(); $pdf->SetFont('Arial','',9); $pdf->AddPage('L'); $pdf->BasicTable($header,$data); $pdf->Output(); ?>

Gambar 4.20. Hasil export PDF

Untuk menulis berita yang akan ditampilkan pada halaman home, kepala laboratorium dapat menggunakan menu berita > buat berita. Dalam form tersebut, akan judul da nisi berita seperti pada gambar 4.21.

Source code untuk menyimpan berita adalah sebagai berikut :

elseif ($_GET[module]=='berita-aksi'){ $judul=$_POST[judul]; $isi=$_POST[isi]; $id=$_SESSION[id]; $my_t=getdate(); $waktu=$my_t[year]."-".$my_t[mon]."-".$my_t[mday]." ".$my_t[hours].":".$my_t[minutes].":".$my_t[seconds];

if(mysql_query("insert into konten values('', '$id', 'berita', '$judul', '$isi', '$waktu');")){

echo "<script>window.alert('Berita $judul telah tersimpan') window.location=('media.php?module=home')</script>";} echo "fail simpan berita";}

Gambar 4.21. Form Menu Buat berita

Menu lihat berita akan menampilkan semua berita yang telah dibuat sebelumnya seperti pada gambar 4.22. Setiap berita disertai dua menu pilihan edit atau hapus. Menu edit akan mengarahkan sistem ke form menu edit berita, sedangkan hapus akan menghapus berita yang dipilih.

Menu Ubah Profil Lab digunakan untuk merubah profil laboratorium yang menjadi tanggung jawab user yang login. Menu ini hanya dapat diakses oleh user dengan hak akses kepala laboratorium. Dalam menu ini akan terdapat textarea profil seperti pada gambar 4.23.

Gambar 4.23. Menu Ubah Profil Lab

Source code untuk menu Ubah Profil Lab adalah sebagai berikut :

elseif ($_GET[module]=='update-profil'){ $id=$_GET[id];

$tex=$_POST[isi];

mysql_query("UPDATE konten set isi='$_POST[isi]', id_user='$_SESSION[id]' WHERE nama_konten='$id'");

echo "<script> window.alert('Profil Laboratorium $id telah di rubah')

window.location=('media.php?module=lab-$id')</script>";

}

Untuk melihat nilai dari praktikum yang tahun ajarannya telah berakhir, dapat digunakan menu history. Saat mengakses menu tersebut, akan muncul daftar tahun ajaran yang telah tersimpan sistem seperti pada gambar 4.24.

Gambar 4.24. Menu History

Saat tahun ajaran atau semester ditekan, akan muncul daftar sesi seperti pada menu lihat sesi (gambar4.14). Sesi yang tampil adalah sesi yang ada pada tahun ajaran tersebut. Ketika sesi tersebut ditekan, maka akan muncul history nilai dari sesi tersebut seperti pada menu lihat nilai pada gambar 4.18 dan gambar 4.19.

Ketika sistem ini baru diterapkan, kepala laboratorium harus mengatur tahun ajaran dan semester yang sedang berjalan. Untuk mengatur tahun ajaran, kepala laboratorium dapat mengakses menu setup sistem, jika tahun ajaran belum diatur, maka sistem akan menampilkan form tahun ajaran seperti pada gambar 4.25. Sedangkan ketika tahun ajaran sudah diatur, maka sistem akan menampilkan

form migrasi data dan tutup buku semester tersebut seperti pada gambar 4.26.

Gambar 4.25. Form Setup Sistem

4.3. M enu Dosen PJ

Tampilan awal ketika user login dengan hak akses dosen PJ akan nampak seperti pada gambar 4.27.

Gambar 4.27. Menu Home Dosen PJ Menu yang dapat diakses dosen pj adalah sebagai berikut :

− Input Nilai = menu ini digunakan untuk memasukkan nilai tes awal persesi yang menjadi tanggung jawab dosen tersebut. Tampilan dari menu

Dokumen terkait