M
M
1
yang sama, yaitu melalui rangkaian langkah sebagai a. M adalah jumlah karakter maksimum yang dapat
berikut : ditampung oleh sebuah field. Nilai maksimum adalah
a. Membuka sambungan dengan database server 255.
b. Memilih dan membuka database yang diinginkan
b. D adalah jumlah angka dibelakang koma. Berlaku
c. Mengirim perintah untuk mengambil, mengubah,
untuk tipe floating point. Nilai D maksimum adalah
menghapus data
30, tapi jangan lebih dai M-2.
d. Mengakses hasil pengambilan data
e. Mengakhiri sambungan c. Unsigned merupakan keterangan bahwa bilangan
yang akan ditampung tidak memiliki tanda negatif.
2.1.2 Query Pengelolaan Database
d. Zerofill merupakan keterangan bahwa field tersebut
Yang termasuk ke dalam kelompok ini adalah dapat tidak diisi atau dikosongkan.
query yang bertujuan untuk :
MySQL mendukung penggunaan operator-
a. Membuat database operator dan fungsi-fungsi diantaranya :
b. Menghapus database a. Operator aritmetika
c. Membuat tabel b. Operator pembandingan
d. Memodifikasi tabel c. Operator logika
e. Menghapus tabel d. Operator karakter
f. Menambah user e. Operator lain-lain
g. Mengatur permission f. Fungsi agregat
h. Menghapus user
Membuat database dilakukan dengan perintah
sebagai berikut : 2.2 PHP
PHP (atau resminya PHP:Hypertext
CREATE DATABASE <nama database> Preprosessor) adalah skrip bersifat servers-side yang
ditambahkan ke dalam HTML. PHP sendiri merupakan
Contohnya : untuk aplikasi Sistem Informasi singkatan dari Personal Home Page Tools. Skrip ini akan
Perpustakaan, akan dibuat database “perpus bkl” dengan membuat suatu aplikasi dapat diintegrasikan ke dalam
query sebagai berikut : HTML sehingga suatu halaman web tidak lagi bersifat
statis, namun menjadi bersifat dinamis. Sifat server-side
CREATE DATABASE perpus bkl berarti pengerjaan skrip dilakukan di server, baru
kemudian hasilnya dikirimkan ke browser.
Menghapus database dilakukan dengan perintah :
Cara penulisan sript PHP ada 2 macam:
DROP DATABASE <nama database> a. Embedded Script
contoh : DROP DATABASE perpus bkl Cara ini meletakkan tag PHP diantara tag-tag HTML
2
echo “</html>”; suatu variabel adalah mengisi nilai untuk pertama kalinya
ke dalam variabel. Contoh :
?>
$namadepan = “Nurul Dewi Fitria”; // tipe string
Sedangkan cara penulisan tag PHP ada 4 style :
$harga_barang = 3500 // tipe integer
a. Style standart
$nilai3 = 3.45; // tipe double
Format : <?php ……. ?>
Tipe data yang dikenal pada PHP
b. Short style
a. Integer
Format : <? ………… ?>
Meliputi semua bilangan bulat yang berada pada
c. Javascript style
range 2,147,483,648 sampai +2,147,483,647. Jika suatu
Format : <script language=’PHP’> ………… nilai berada di luar range tersebut maka PHP akan secara
</script> otomatis mengkonvensi menjadi floating point. Integer
dapat dinyatakan dalam bentuk octal (basis 8), decimal
d. ASP style (basis 10) dam heksadesimal (basis 16).
Format : <% ………. %> Contoh :
Untuk menampilkan nilai suatu
$desimal=13;
variabel/mencetak ke layer, digunakan perintah :
$heksa=0x11; // bernilai 17 dalam decimal
a. echo
$oktal=020;
contoh :
$bil_neg=-12;
echo "$data";
b. Floating point
echo $data;
Merepresentasikan bilangan pecahan, atau bilangan
echo "nilai : "
decimal yang berada di range 1.7E-308 sampai 1.7E+308.
echo $data. "mahasiswa";print Floating point dapat dinyatakan dalam bentuk pangkat
dan decimal.
b. print
Contoh :
contoh :
$desimal=0.0123;
print ("$data");
$pangkat=13.0E-3
print ($data);
c. String
print ("nilai : )"
Setiap tipe data string selalu diapit oleh tanda petik
print ($data. "mahasiswa"); tunggal (‘’) maupun ganda (“”).
c. printf Contoh :
contoh : $string1=’Belajar PHP’;
printf ("%s",$data); $string2=”Pemrograman Web”;
print ("%s mahasiswa, $data"); Perbedaan antara petik tunggal dan ganda adalah: jika
Variabel digunakan sebagai tempat penyimpanan pada petik tunggal maka pada string itu tidak dapat
data sementara. Data tersebut akan hilang setelah program dimasukan suatu variabel dan escape sequence handling.
selesai dieksekusi. Untuk menyimpan data secara Karakter \ digunakan untuk menentukan karakter
permanent, kita bisa menyimpannya di hardisk atau khusus (escape sequence) seperti tabel berikut :
disket.
Aturan dalam penggunaan nama variabel : Sequence Keterangan
a. Diawali dengan karakter $
\n Membuat baris baru
b. Bersifat case sensitive, jadi “Nama” berbeda dengan
“nama” atau “NAMA”. \r Carriage
c. Karakter pertama harus huruf atau garis bawah ( _ ).
\t Tab horizontal
d. Karakter berikutnya boleh huruf, angka atau garis
bawah ( _ ). \’ Petik tunggal
Pendeklarasian suatu variabel dilakukan pada
saat pertama kali variabel tersebut dipanggil. Inisialisasi \” Petik ganda
3
Maka tampilan akan seperti gambar di bawah ini dan kita
\$ Tanda dolar
bisa mengisi isi dari tabelbuku
\\ Backslash
2.3 PHPMyADMIN
PhpMyAdmin adalah suatu program Open
Source berbasis web. Kegunaan dari program ini adalah
untuk mengakses database MySQL. Dengan program ini
maka akan mempermudah dan mempersingkat kerja.
Selain itu bagi pengguna awam tidak harus mengenal
syntax-syntax SQL dalam pembuatan suatu database dan Gambar 2.3. Pengisian isi tabel pada PhpMyAdmin
tabel. Sehingga dengan adanya PhpMyAdmin ini sangat
membantu sekali. Berikut adalah tampilan halaman utama
pada PhpMyAdmin :
2.4 Java Netbeans IDE 6.0
2.4.1 Pengenalan Java
Java dikenal sebagai bahasa pemrograman
tingkat tinggi yang berorientasi objek, atau lazim disebut
istilah Object Oriented Programming (OOP). Sejarah
perkembangan java dimulai pada tahun 1990 ketika James
Gosling, seorang ahli pemrograman yang bekerja di Sun
Microsystem, ditugaskan untuk menciptakan program
untuk mengendalikan perangkat elektronik rumah tangga.
Disamping itu juga, bahasa yang dihasilkan harus bersifat
multiplatform, tidak bergantung pada salah satu vendor.
Gambar 2.1 halaman utama PHPMyAdmin
Maka dimulailah proyek tersebut dengan kode Green
yang dipimpin oleh Patrick Naughton dan James Gosling.
Untuk membuat database baru tinggal
mengetikan nama database yang diinginkan pada kotak
merah yang bertanda panah. Sehingga tidak perlu 2.4.2 Cara Kerja Java
menuliskan syntax untuk pembuatan suatu database. Java merupakan bahasa pemrograman
Nama tersebut nantinya digunakan sebagai syarat untuk kompilator dan juga interpreter yang menjadikan Java
pengaksesan ke dalam tabel – tabel yang ada dalam dapat dijalankan pada platform yang berbeda. Kompilator
database. Nama database yang dibuat tidak boleh sama Java melakukan kompilasi pada kode sumber menjadi
dengan database yang sudah ada. Karena Php case bytecode Java. Bytecode Java merupakan instruksi mesin
sensitive membedakan huruf besar dan kecil, maka yang tidak spesifik terhadap prosesor computer dan akan
sebaiknya pemberian nama diketik dalam huruf kecil dijalankan pada platform dengan menggunakan Java
semua atau huruf kapital semua. Apabila kita telah Virtual Machine (JVM) yang biasa disebut dengan
membuat database “perpus bkl” maka tampilannya interpreter bytecode atau Java Runtime Interpreter.
sebagai berikut:
4
kepada si pengirim. Tetapi jika ponsel tujuan dalam SMS dari public user diterima oleh GSM
keadaan mati atau di luar jankauan, SMS yang dikirimkan Provider dan diteruskan kepada ponsel penerima yang
akan disimpan pada SMSC sampai periode validitas kemudian ditransfer ke program pada server melalui kabel
terpenuhi. Jika periode validitas terlewati maka SMS itu data, setelah itu program melakukan penyimpanan data
akan dihapus dari SMSC dan tidak dikirimkan ke ponsel SMS ke basis data serta melakukan query basis data
tujuan. Disamping itu, SMSC akan mengirim pesan berdasarkan isi dari SMS dari public user. Hasil query
informasi ke nomor pengirim yang menyatakan pesan dari database diambil oleh program dan diolah menjadi
yang dikirim belum diterima atau gagal. sebuah informasi dan kemudian siap untuk dikirimkan
kembali kepada public user yang me-request.
Proses pengiriman SMS dapat dilihat pada
gambar di bawah ini. Informasi yang dihasilkan oleh program di
transfer ke ponsel server melalui kabel data dan
mengirimnya ke GSM Provider dan kemudian diteruskan
ke public user yang me-request dengan berisi informasi
sesuai dengan request yang dikirimkan.
Databuku admin
member lap. member
Datapesanbuku dt member
member
username
Datamember
username password
password akses diterima dt buku
2
admin buku
login admin akses
login admin
peminjaman_
diterima akses member 1 1
Gambar 3.1. blok diagram sistem informasi perpustakaan akses
dt pminjaman
anggota
pesan buk
dt pemesanan
akses pesan buku
lap peminjaman
Dalam sistem informasi ini terdapat beberapa 3
pemesanan pembuatan
akses yang bisa dilakukan seperti daftar untuk menjadi laporan
lap. buku
5
dan password maka harus melakukan registrasi terlebih sms masuk ke hp, maka sms tersebut di pindah ke DB dan
dahulu. menghapus sms yang ada di hp, hal ini dimaksudkan
untuk mencegah agar inbox tidak penuh. Kemudian
Setelah ada user yang login maka sistem akan
membaca sms yang sudah disimpan di Database, jika
membedakan apakah yang login tersebut admin atau
pencarian buku maka dilakukan proses pencarian yang
anggota. Jika yang login adalah admin maka akan masuk
mana apabila ditemukan lebih dari 1 buku, maka akan
ke halaman admin yaitu terdapat menu untuk tambah, edit
ditampilkan per halaman. Jika pemesanan buku maka
dan delete data buku, data anggota, data kategori buku,
dilakukan proses pemesanan, namun jika format salah
data transaksi peminjaman dan pengembalian.
maka proses pengiriman format salah. Setelah itu
dilanjutkan dengan pengiriman sms ke user. Jika
pengiriman sukses maka status sukses, jika gagal maka
status gagal.
t
F
y
ada
a
Tambah,
T
anggota tersebut. T
3. Melihat buku apa saja yang pernah dipinjam oleh Kirim hasil ada
anggota tersebut.
t
Finish
y
a
Pesan Gambar 3.7 Flow chart SMS gateway
buku
Lihat data
bk yg
dipinjam
Akhir &
3.4 DESAIN DATABASE
dipesan Tabel-tabel yang terdapat pada pembuatan
Sistem Informasi Perpustakaan Online Berbasis PHP dan
Gambar 3.6 Flow chart anggota perpustakaan SMS Gateway di bangkalan ini meliputi tabel anggota,
Flow chart untuk SMS gateway adalah seperti tabel buku, tabel kategori, tabel admin, tabel peminjaman
gambar 3.6. Flow chart tersebut menggambarkan aliran buku, tabel sms masuk dan tabel sms keluar. Untuk CDM
data mulai dari mengecek sms yang masuk ke hp. Jika ada dan PDM nya dapat kita lihat pada gambar berikut :
6
Kelas Varchar (50)
tblpeminjamanheader
member2
NoTransaksi
agama
kode
NoAnggota
NamaAnggota
Tanggal
tglhrskembali
TempatLahir Varchar (50)
user meminjam TotalQty
Agama
Relation_125 pass note
sms_keluar
Alamat
Kota
tglkembali
TotalDenda
TanggalLahir Date
mengirim Propinsi
id_keluar memberikan
KodePost
no_telepon
tanggal_keluar
Negara
Telephone
memesan
admin Agama Varchar (10)
jam_keluar id
Kelas
isi_pesan_keluar user
TempatLahir
status_keluar
mengirim TanggalLahir
pass
TahunMasuk Varchar (5)
Agama pesanbuku
TahunMasuk
sms_masuk id_trans
id_masuk
f oto tgl_trans
status id
bukutamu
Foto Varchar (25)
no_telepon
user
tanggal_masuk
tabelbuku email
jam_masuk
komentar
isi_pesan_masuk Key Item
Judul Tgl
status_masuk
kategori
Penerbit
KodeGroup
Keterangan
pengarang
note
buku yg dipesan
Tabel 3.2 Tabel buku
kategori
statuspinjam
gambar
Field Type Keterangan
KeyItem Varchar (15) Primary key
Gambar 3.8 CDM Judul Varchar (150)
KodeGroup Varchar (10)
MEMBER2
AGAMA
NOANGGOTA_MEMBER i7
KODE I2
AGAMA long varchar
KODE=KODE KODE
NAMAANGGOTA
I2
varchar(50)
TBLPEMINJAMANHEADER
NOTRANSAKSI varchar(20)
Penerbit Varchar (50)
USER varchar(10) NOANGGOTA_MEMBER i7
PASS varchar(10)NOANGGOTA_MEMBER=NOANGGOTA_MEMBER
ID I11
SMS_KELUAR ALAMAT
KOTA
varchar(100)
varchar(50)
TANGGAL
TGLHRSKEMBALI
date
date
Pengarang Varchar (50)
ID_KELUAR i11
PROPINSI varchar(50) TOTALQTY float
NOANGGOTA_MEMBER i7
KODEPOST varchar(20) NOTE long varchar
NO_TELEPON
TANGGAL_KELUAR
varchar(20)
date
NEGARA
NOANGGOTA_MEMBER=NOANT
GEGLEPHO
OTA_M NBE
EM ER
varchar(50)
varchar(50)
TGLKEMBALI date jumlah Tinyint (3)
JAM_KELUAR time TOTALDENDA double
KELAS varchar(50)
ISI_PESAN_KELUAR varchar(160) NOANGGOTA_MEMBER=NOANGGOTA_MEMBER
TEMPATLAHIR varchar(50)
STATUS_KELUAR varchar(100)
NOANGGOTA_MEMBER=NOTAG
AN NG GALL
GOTA_M
AGAMA
AHIR
EM BER Date
long varchar ID_TRANS
PES ANB UKU
i5
ID =ID stok Tinyint (3)
BUKUTAMU TAHUNMASUK varchar(50) NOANGGOTA_MEMBER i7 ADMIN
ID_BUKU_TAMU
USER
i11
varchar(10)
FOTO varchar(25) KEYITEM
TGL_TRANS
varchar(50)
date
ID I11
USER varchar(10) Note Mediumtext
EMAIL varchar(25) STATUS smallint PASS varchar(10)
KOMENTAR varchar(200)
TGL Date
StatusPinjam Tinyint (1)
TABELBUKU
SMS_MASUK
ID_KELUAR2KATEGORI i11
KEYITEM
KODEGROUP
varchar(50)
varchar(10)
Gambar Varchar
NOANGGOTA_MEMBER i7 JUDUL long varchar
KODEGROUP varchar(10)
NO_TELEPON varchar(20) PENERBIT varchar(50)
KETERANGAN varchar(50)
TANGGAL_KELUAR2
JAM_KELUAR2
date
time
PENGARANG
NOTE
varchar(50)
long varchar
KEYITEM=KEYITEM
tgl Date
ISI_PESAN_KKO
ELUA R2
DEGROUP=KODEGROU vaPrchar(160) STATUSPINJAM smallint
STATUS_KELUAR2 varchar(100) GAMBAR varchar(25)
7
User Varchar (10) 3.1 PERANCANGAN PROGRAM
Email Varchar (25) Ada beberapa program yang sangat penting agar
aplikasi ini dapat berjalanan. Diantaranya adalah Koneksi
Komentar Varchar (200) database, penambahan database, pengubahan database,
Tgl Date penghapusan database, pengecekan user dan pemesanan.
3.1.1 Koneksi Database
Tabel 3.7 tabel peminjaman Hal pertama yang perlu dilakukan adalah
menghubungkan database dengan program sehingga pada
Field Type Keterangan nantinya program yang dijalankan dapat mengambil nilai-
Notrans Varchar (10) Primary key nilai dari database. Koneksi database pada sistem
informasi ini terdapat pada koneksi.php dengan listing
Noanggota Varchar (7) program sebagai berikut :
Keyitem Varchar (50)
<?
Tglpinjam date session_start();
ob_start();
Tglharuskembali Date
//lakukan koneksi ke database
$conn=mysql_connect("localhost:3306","root","");
//pilih database
Tabel 3.8 tabel pesan buku $sukses=mysql_select_db("perpus bkl",$conn);
Field Type Keterangan if (!sukses)
{
Id_Trans Int (15) Primary key echo "Koneksi gagal"; exit;
Tgl_trans Date }
?>
Noanggota int (7)
Keyitem Varchar (15) 3.1.2 Pengubahan Database
$ket=mysql_result($rs,0,"Keterangan");
8 ?>
<form action="<? echo $halaman; ?>"
method="post">
<table border="0"
align="center">
<tr><td>Kode</td><td>:</td><td><? echo
$kode; ?> <input type="hidden" name="kode"
value="<? echo $kode; ?>"></td></tr>
<tr><td>Kategori</td><td>:</td><td><input
type="text" name="keterangan" value="<? Gambar 4.1 halaman utama (index)
echo $ket; ?>"></td></tr>
<tr><td colspan="3"
align="right"><input type="submit" Transaksi Peminjaman Buku
name="simpan" value="simpan"></td></tr>
</table> Pada transaksi peminjaman buku, pertama kali
</form> admin harus memasukkan id anggota, karena hanya
<? anggota saja yang berhak untuk meminjam buku. Jika id
}; tersebut ditemukan, maka data dari anggota tersebut akan
?> tampil secara otomatis. Disamping itu, jika anggota
tersebut pernah meminjam buku, maka secara otomatis
juga akan tampil, sehingga apabila anggota tersebut
terlambat untuk mengembalikan buku, admin bisa
3.1.3 Penghapusan Database mengingatkannya.
Seorang admin kadang perlu untuk menghapus
data pada database yang sudah dianggap tidak diperlukan
lagi. Pada MySQL ini perintah yang digunakan untuk
penghapusan data adalah DELETE.
<?
$kode=$_GET['KodeGroup'];
include("../koneksi.php");
$q="delete from kategori where
KodeGroup='$kode'"; Gambar 4.10 transaksi peminjaman (cek id anggota dan
$rs=mysql_query($q,$conn); data yang sudah dipinjam )
//jika berhasil, maka buka tampilan view
if ($rs)
{ Setelah itu, admin menginputkan buku yang
header("location:groupview.php"); dipinjam, jika stok masih ada, maka buku tersebut bisa
} dipinjam. Admin bisa meng klik tombol pinjam, dan
?> program akan memberitahukan bahwa transaksi
peminjaman berhasil. Proses peminjaman buku, akan
mengurangi jumlah stok pada tabel buku.
Bagi anggota yang sudah melakukan pemesanan
IV Pengujian dan Analisa buku, akan muncul secara otomatis di transaksi
peminjaman seperti gambar di bawah ini
4.1 Pengujian Sistem
Pada bab pengujian hasil dan analisa ini akan
dibahas mengenai pengujian dari perangkat lunak
(software) yang dibuat. Hal ini bertujuan untuk
mengetahui sejauh mana ketepatan eksekusi perangkat
lunak yang telah dibuat serta tidak menutup kemungkinan
mengetahui kelemahannya. Sehingga dapat disimpulkan
apakah perangkat lunak yang dibuat dapat berjalan
secara benar dan sesuai dengan kriteria yang diharapkan.
4.1.1 Implementasi Web Perpustakaan Online
Halaman Utama (index) Gambar 4.11 Menampilkan data pemesanan buku pada
saat transaksi peminjaman
Pada tampilan halam utama web memuat menu
informasi perpustakaan, pencarian buku dan login.
9
Tiap anggota hanya dibatasi 3 buku saja. Jika Laporan Buku yang ada di perpustakaan
anggota tersebut sudah meminjam 3 buku, program akan
memberitahu dan anggota tersebut harus mengembalikan Admin juga bisa melihat buku-buku yang ada di
salah satu buku yang dipinjam jika ingin meminjam buku perpustakaan Bangkalan dengan meng klik laporan buku
lagi. yang ada di perpustakaan seperti gambar di bawah ini :
10
1. Pencarian Buku Perpustakaan Bangkalan
Format SMS untuk pencarian buku adalah CARI
BUKU <kata kunci>. Untuk mencoba fasilitas ini, maka
kirim SMS ke nomor SMS Server dengan isi pesan CARI
BUKU KOMPUTER.
11
pesan buku berhasil dipesan, silahkan ambil buku di Daftar Pustaka
perpustakaan bangkalan jika stok buku masih ada, tapi
jika stok buku sudah habis maka akan dibalas dengan isi 1. Fahamsyah, Farid. ” Bursa Kerja Berbasis Mobile”
pesan stok buku sudah habis. Proyek Akhir Joint Program BA Malang, 2007.
2. Santoso, B Eko. ”Sistem Informasi Jadwal
Konsultasi Dokter via SMS” Proyek Akhir Pens ITS,
2007.
3. Prasetyo, Eko. ”Pemrograman Web PHP &
MySQL”, Graha Ilmu. 2008
4. Purnomo, Adi. ”Pemrograman Java Membangun
Beragam Aplikasi Layanan SMS 2”. Salemba
Gambar 4.27 Pesan balasan dari SMS server Infotek, 2007.
5. Trisnani, Santi. ”Sistem Informasi Salon & SPA
Untuk Perawatan Kecantikan Berbasis On Line
3. Pesan alert karena keterlambatan pengembalian buku JSP”, 2009.
Jika ada anggota yang terlambat mengembalikan
buku, maka SMS server akan mengirimkan sms yang
memberitahukan agar segera mengembalikan buku yang
sudah dipinjam.
V. Penutup
5.1 KESIMPULAN
Dari hasil analisa pada bab sebelumnya dapat
diambil kesimpulan sebagai berikut :
Dengan adanya Sistem Informasi Perpustakaan
Online Berbasis PHP dan SMS Gateway ini user
dapat mendapatkan informasi lebih cepat.
User bisa melakukan pendaftaran secara online
melalui web perpustakaan Bangkalan.
User juga bisa melakukan pencarian buku melalui
SMS.
5.2 SARAN
Proyek akhir ini masih jauh dari sempurna,
masih banyak kekurangan-kekurangan dalam sistem ini
diantaranya :
Belum tersedia fasilitas pendaftaran melalui sms.
Hasil pencarian buku melalui SMS gateway masih
terbatas 160 karakter.
Uji analisa masih terbatas pada handphone GSM, jadi
untuk handphone CDMA penulis belum melakukan
uji analisa.
12