Diajukan oleh:
Azizah Lubis
NIM. 160212109
M. Sabarudin LB
NIM. 160212129
Yulia Maulida
NIM. 160212031
1
DAFTAR ISI
2
B. Pengantar
SMP Negeri 12 Banda Aceh merupakan salah satu sekolah menengah pertama negeri yang
ada di kawasan kota Banda Aceh. Pada sekolah ini pengelolaan sistem informasi sebagian besar
masih dilakukan secara manual, salah satunya dalam pengelolaan sistem informasi perpustakaan
sekolah tersebut. Pengolahan ini tidak mampu mencegah terjadinya pengulangan data yang
dibukukan. Pengulangan data menyebabkan kurang efesien dalam pembukuan saat proses
pinjam-meminjam ataupun penambahan serta pengurangan buku dan anggota di perpustakaan
tersbut. Hal ini dapat memungkinkan terjadinya terjadinya kesalahan dalam pengolahan data.
Maka dari itu, penulis, merancang sebuah Sistem Informasi Perpustakaan yang berbasis Web
pada SMP N 12 Banda Aceh, yang diharapkan mampu memberikan kemudahan dan kelancaran
dalam mengelola informasi perpustakaan tersebut.
Sistem Informasi Perpustakaan berbasis Web adalah sebuah sistem informasi yang
berbasiskan website dimana sistem ini akan digunakan untuk menglola dan mengontrol segala
kegiatan yang terjadi di perpustakaan SMP N12 Banda Aceh, baik itu proses penambahan anggota
perpustakaan, penambahan buku perpustakaan, proses pinjam meminjam yang dilakukan oleh
anggota serta pendataan buku yang ada di perpustakaan SMP Negeri 12 Banda Aceh.
Diagram Alir Sistem adalah sebuah diagram yang menggambarkan aliran jalannya program
tersebut dan hubungan dari satu entitas ke entitas lainnya. Berikut ini merupakan diagram alir
sistem informasi perpustakaan SMP N 12 BNA yang kami rencanakan.
3
Start
Formulir Formulir
pendaftaran pendaftaran
Pengolahan
data anggota
dan
pembuatan
kartu anggota
Pencatatan
data
peminjaman
buku
Bukti
peminjaman Bukti
peminjaman
Membuat
laporan
peminjaman
Laporan data
Laporan data peminjaman
peminjaman buku
buku
Kartu anggota
perpus Kartu anggota
perpus
Pencatatan
data
pengembalian
buku
Bukti
pengembalian
Membuat
laporan
pengembalian
dan denda
4
Laporan data
Laporan data pengembalian
pengembalian buku
buku
Laporan data
Laporan data denda buku
denda buku
a. Context Diagram
Context Diagram atau DFD level 0 merupakan gambaran besar yang dapat mewakili
seluruh proses yang terdapat di dalam suatu sistem. DFD level 0 akan digunakan untuk
menggambarkan interaksi antara sistem yang akan dikembangkan dengan entitas luar.
5
dalam sebuah ERD karena entitas merupakan sebuah table penyimpanan data pada database.
Lalu adapun atribut yang digambarkan berbentuk oval dan atribut merupakan isi data dari
sebuah entitas. Kemudian relasi pada ERD digambarkan berbentuk belah ketupat dan relasi
merupakan hubungan yang ada antara satu entitas dengan entitas lainnya. Berikut ini adalah
ERD dari sistem informasi perpustakaan SMPN 12 BNA.
Cari data Cari data Cari data Cari data View data
6
Hapus data Hapus data
4. Kamus Data
Kamus data ini merupakan deskripsi tertulis dari Sistem Informasi
Perpustakaan Berbasis Web, yang berada dalam database yang menjelaskan arti aliran
data dan penyimpanan data dalam DFD. Menspesifikasikan variabel dari setiap
entitas dalam database, serta mendeskripsikan hubungan antara entitas dalam ERD.
1. Nama : Pendaftaran
Digunakan di : admin ketika mendaftarkan diri menjadi anggota pustaka
(input)
Deskripsi : pendaftaran = nis + nama + kelas + alamat
Nis =*int*
Nama=*varchar*
Kelas=*int*
Alamat=*varchar*
2. Nama : Peminjaman
Digunakan di : admin pada saat proses siswa meminjam buku (input)
Deskripsi : Peminjaman = kode pinjam + tanggal peminjaman +
tanggal pengembalian
Kode Pinjam =*int*
Tanggal Peminjaman =*date*
Tanggal Pengembalian =*date*
3. Nama : Pengembalian
Digunakan di : admin pada saat proses siswa mengembalikan buku
(input)
Deskripsi : Peminjaman = kode pengembalian + kode pinjam +
tanggal pengembalian
kode pengembalian =*int*
Kode Pinjam =*int*
Tanggal Pengembalian =*date*
9. Nama : Input Data Buku
Digunakan di : Admin ketika proses mendata buku, memasukkan buku
baru (input)
7
Deskripsi : Buku = kode buku + judul + pengarang + penerbit +
kategori
Kode buku =*int*
Judul buku =*varchar*
Pengarang =*varchar*
Penerbit =*varchar*
Kategori =*varchar*
7. Nama : Input Data Pinjam
Digunakan di : Siswa dan admin pada saat proses siswa meminjam buku
Deskripsi : Peminjaman = kode pinjam + tanggal peminjaman +
tanggal pengembalian
Kode Pinjam =*int*
Tanggal Peminjaman =*date*
Tanggal Pengembalian =*date*
8. Nama : Input Data Anggota
Digunakan di : admin ketika siswa mendaftarkan diri menjadi anggota
pustaka (input)
Deskripsi : pendaftaran = nis + nama + kelas + alamat
Nis =*int*
Nama=*varchar*
Kelas=*int*
Alamat=*varchar*
9. Nama : Daftar Anggota
Digunakan di : admin ketika siswa mendaftarkan diri menjadi anggota
pustaka (input)
Deskripsi : pendaftaran = nis + nama + kelas + alamat
Nis =*int*
Nama=*varchar*
Kelas=*int*
Alamat=*varchar*
10. Nama : Daftar Buku
Digunakan di : Admin berisikan semua data buku yang ada
diperpustakaan (input)
Deskripsi : Buku = kode buku + judul + pengarang + penerbit +
kategori
Kode buku =*int*
Judul buku =*varchar*
Pengarang =*varchar*
Penerbit =*varchar*
Kategori =*varchar*
8
11. Nama : Daftar Peminjaman
Digunakan di : admin berisikan semua data siswa beserta buku yang
di pinjam, pada saat proses siswa meminjam buku
5. Struktur Database
Berikut ini adalah gambar struktur database sistem informasi perpustakaan SMPN 12 BNA.
Struktur database yang di tampilkan adalah bentuk struktur dari setiap table yang berisi
nama table, tipe data, value huruf, indeks dari atribut.
9
4. Struktur table peminjaman
6. Desain Input
Berikut ini merupakan tampilan input untuk menambah atau mendaftarkan siswa yang akan
menjadi anggota baru dari perpustakaan SMPN 12 BNA. Pada form inpt tersebut terdapat
beberapa data yang harus diisi untuk mendaftar sebagai anggota, dan data tersebut diisi
sesuai dengan data dari formulir yang telah diisi secara manual oleh siswa sebelumnya.
10
7. Desain Output
Berikut ini merupakan hasil keluaran atau output setelah admin menambahkan anggota
baru. Pada tampilan berikut output yang ditampilkan merupakan semua data yang telah
diinputkan sebelumnya oleh admin berdasarkan dengan formulir yang diisi secara manual
oleh siswa sebelumnya.
Mengelola
peminjaman
Siswa/anggota
meminjam
Transaksi
peminjaman
Admin
Mengelola
data buku
Mengelola
pengembalian
11
mengembalikan
2. Activity Diagram
Berikut ini adalah table activity diagram dari sistem informasi perpustakaan SMPN 12 Banda
Aceh. Pada table tersebut di gambarkan proses – proses yang dilakukan oleh anggota,
admin/pustakawan, dan sistem informasi itu sendiri. Proses tersebut berupa proses
pendaftaran anggota baru, proses peminjaman buku, dan proses pengembalian buku.
Peminjaman buku
Membawa kartu
anggota
Mencari Buku
Pengambalian buku
13
selesai Menulis tanggal
pengembalian buku di
kartu pengembalian yang
ada pada buku
3. Class Diagram
Class diagram merupakan salah satu diagram utama dari UML untuk menggambarkan class
pada sebuah sistem.
14
4. Object Diagram
Object diagram adalah sebuah diagram yang berisikan contoh beberapa data dari class itu
sendiri.
G. Lampiran
<?php
include'config/koneksi.php';
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>SISTEM INFORMASI PERPUSTAKAAN </title>
<link rel="stylesheet" href="library/css/style.css"/>
</head>
<body>
<div class="wrap">
<div class="header">
<h1>SISTEM INFORMASI PERPUSTAKAAN SMP NEGERI 12 BANDA ACEH</h1>
<p>Alamat Jl. Pawang Itam, Gampong Jawa, Banda Aceh</p>
<p>Contact : 0651-3342-1010</p>
</div>
<div class="header2"> </div>
<div class="main">
<div class="konten">
<p>
<?php
include("views/" . $_GET['page']);
.......................................................................................................................................?>
</p>
</div>
15
<div class="sidebar-kiri">
<div id="kiri">
<h1><a href="index.php?page=etc/home.php" >Menu Utama</a></h1><br>
<a href="index.php?page=anggota/index.php" >Anggota</a><br>
<a href="index.php?page=peminjaman/index.php" >Peminjaman</a><br>
<a href="index.php?page=pengembalian/index.php" >Pengembalian</a><br>
<a href="index.php?page=buku/index.php" >Buku</a><br>
<a href="index.php?page=laporan/index.php" >Laporan</a><br>
</div>
</div>
<div class="clear"></div>
</div>
<div class="footer">
</div>
</div>
</body>
</html>
(KONEKSI DATABASE)
<?php
$conn = new mysqli("localhost", "root", "", "perpus");
//new keyword utk membuat object baru
//mysqli() --> method/function
//new mysqli() --> constructor (method yg pertama x dijlnkn saat object dibuat)
//$conn ->object
//mysqli(argumen/parameter, argumen/parameter, argumen/parameter,
argumen/parameter) ->
?>
<?php
16
<select name="kelas"><?php echo $rows['kelas']; ?>"/>
<option value="0">- Pilih -</option>
<option value="VII">VII</option>
<option value="VIII">VIII</option>
<option value="IX">IX</option>
</select>
<br>
<br/>
<label>Alamat</label>
<br/>
<input type="text" name="alamat" />
<br>
<br/>
<input type="submit" value="Tambah" />
</p>
</form>
(KONEKSI DATABASE)
<?php
$nis = $_POST['nis'];
$nama_sis = $_POST['nama_sis'];
$kelas ....................................................................................................................................=
$_POST['kelas'];
$alamat = $_POST['alamat'];
$conn->query($sql);
header("Location:index.php?page=anggota/index.php");
?>
Coding Search
<?php
$cari = $_POST['cari'];
$sql = "SELECT * FROM siswa WHERE nama_sis LIKE '%$cari%'";
$result = $conn -> query($sql);
?>
<br>
<h1> Data Anggota</h1>
<br>
<h2>Cari Data Berdasarkan Nama</h2>
<form method="post" action="index.php?page=anggota/search.php">
<input type="text" name="cari" />
17
</form>
<br>
<p><a href="index.php?page=anggota/new.php" ><B>Tambah Data</a></B></p>
<p><br>
</p>
<center>
<div id="outtable">
<table>
<thead>
<tr>
<?php
$nis ..................................................................................................................................... =
$_GET['nis'];
$siswa = "SELECT * FROM siswa WHERE nis='$nis'";
$result_siswa = $conn->query($siswa);
$rows = $result_siswa->fetch_array();
?>
18
<form action="index.php?page=anggota/update.php" method="post">
<input type="hidden" name="nis" value="<?php echo $rows['nis']; ?>"/>
<label>Nama</label>
<br/>
<input type="text" name="nama_sis" value="<?php echo $rows['nama_sis']; ?>"/>
<br>
<br/>
<label>Kelas</label>
<br/>
<select name="kelas"><?php echo $rows['kelas']; ?>"/>
<option value="0">- Pilih -</option>
<option value="VII">VII</option>
<option value="VIII">VIII</option>
<option value="IX">IX</option>
</select>
<br>
<br/>
<label>Alamat</label>
<br/>
<input type="text" name="alamat" value="<?php echo $rows['alamat']; ?>"/>
<br/>
<br/>
<input type="submit" value="Submit" />
<!-- <button type="submit"> Submit123 </button>--> ....................................................
</form>
(KONEKSI DATABASE)
<?php
$nis = $_POST['nis'];
$nama_sis = $_POST['nama_sis'];
$kelas ....................................................................................................................................=
$_POST['kelas'];
$alamat = $_POST['alamat'];
$conn->query($sql);
header("Location:index.php?page=anggota/index.php");
?>
View Data
<?php
$sql = " SELECT * FROM pinjam";
19
$result = $conn->query($sql);
?>
<br>
<h1> Data Peminjaman</h1>
<br>
<h2>Cari Data Berdasarkan ID Pemeriksa</h2>
<form method="post" action="index.php?page=peminjaman/search.php">
<input type="text" name="cari" />........................................................................................
</form>
<br>
<p><a href="index.php?page=peminjaman/new.php" ><B>Tambah Data</a></B></p>
<p><br>
</p>
<center>
<div id="outtable">
<table width="1087">
<thead>
<tr>
<th width="120" class="normal">ID Pinjam</th>
<th width="224" class="normal">Judul Buku</th>
<th width="224" class="normal">Tanggal Peminjaman</th>
<th width="224" class="normal">Tanggal Pengembalian</th>
<th width="277" class="normal">Pilihan</th>
</tr>
</thead>
<tbody>
<?php
while($row = $result->fetch_array()){
?>
<tr>
.......................................................................................................................................
<td><?php echo $row['id_pinjam']; ?></td>
<td><?php echo $row['judul']; ?></td>
<td><?php echo $row['tgl_pinjam']; ?></td>
<td><?php echo $row['tgl_kembali']; ?></td>
20