sistem informasi pengelolaan rental mobilrepository.usd.ac.id/32195/2/025314057_full.pdfsistem...
Post on 14-Jul-2021
8 Views
Preview:
TRANSCRIPT
SISTEM INFORMASI PENGELOLAAN RENTAL
MOBIL
( Studi Kasus di Hafa Car Rental )
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
Oleh:
Nama : Andreas Kurniawan
NIM : 025314057
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
CAR LEASING MANAGEMENT INFORMATION
SYSTEM
( Case Study at Hafa Car Rental )
A Thesis
Presented as Partial Fulfillment of the Requirements
To Obtain the Engineering Degree
In Informatics Engineering
By :
Nama : Andreas Kurniawan
St. Num : 025314057
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2007
vi
HALAMAN MOTTO
vii
HALAMAN PERSEMBAHAN
Kupersembahkan karya tulis ini kepada :
Tuhan Yesus KristusTuhan Yesus KristusTuhan Yesus KristusTuhan Yesus Kristus
Bapak dan Ibu ku tercinta atas kasih sayang serta
perhatiannya yang telah merawat dan membesarkan aku
dari kecil hingga dewasa.
Segenap keluarga besar Soemardjo dan keluarga di Yogyakarta
atas doa, semangat, dan dukungan baik secara moril maupun
materil.
Bmnbnbufs!lv!ufsdjoub/!
viii
ABSTRAKSI
Sistem Informasi Pengelolaan Rental ini bertujuan untuk mencatat semua
transaksi sewa mobil yang terjadi di Hafa Car Rental. Selama ini Hafa Car Rental
belum mempunyai sebuah informasi, oleh karena itu semua catatan transaksi sewa
mobil masih dilakukan secara manual yaitu dengan Microsoft Exel, sehingga
masih sering terjadi kesalahan-kesalahan dalam pencatatan dan perhitungan sewa,
serta membutuhkan waktu yang lama apabila kita ingin melihat atau mencari
suatu transaksi yang pernah terjadi di Hafa Car Rental. Dengan adanya sistem ini
diharapkan mampu mengatasi permasalahan-permasalahan yang terjadi di Hafa
Car Rental.
Dalam tugas akhir ini membahas tentang cara perancangan dan implementasi
Sistem Informasi Pengelolaan Mobil yang mampu menangani pencatatan
transaksi sewa mobil, perhitungan denda, pemesanan mobil secara online serta
laporan penyewaan mobil secara periodik, yaitu laporan bulanan. Sistem ini
dikembangkan menggunakan PHP5 dan MySql5
Hasil yang diperoleh adalah sebuah Sistem Informasi Pengelolaan Rental
Mobil berbasis web yang dapat membantu pengelola rental mobil didalam
mengelola transaksi sewa mobil, user juga dapat dengan mudah melakukan
pemesanan mobil secara online. User dapat juga dengan mudah mendapatkan
informasi mengenai stok mobil dan harga sewa mobil secara online.
Kata kunci : sistem informasi, pengelolaan rental.
ix
ABSTRACT
The System Information of Rental Management has a purpose to note all
of Rental car transaction in Hafa Car Rental. For this moment, Hafa Car Rental
doesn’t has an information yet, therefore all of car rental transactions are done
manually with Microsoft Exel, so many mistakes happened on noting and rental
accounting, and also need a long time if we want to look or look for a transaction
that it’s even been happened in Hafa Car Rental. Hopefully, with the system are
got a hope for overcoming the problems happened in Hafa Car Rental.
This thesis discusses about assembling and implementation system. The
System Information of Car Rental Management that handle car rental transaction
noting, fine counting, car reservation online, and the report of car rental
periodically, are the monthly report. The system are developed by using PHP5 and
MySQL5.
The result is an System Information of Rental Management base on Web.
It can help car rental manager for managing the car rental transaction. It can also
help the customer easily to reserve the car online. The customer can get the
information about the car stock and the price of car rental online easily.
Key word : the information system, rental management.
x
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus dan Bunda
Maria atas segala berkat dan kasih-Nya, sehingga penulis dapat menyelesaikan
tugas akhir ini yang disusun untuk melengkapi persyaratan dalam menyelesaikan
jenjang studi guna meraih gelar gelar sarjana Teknik Informatika di Universitas
Sanata Dharma Yogyakarta.
Dalam kesempatan ini penulis tidak lupa menyampaikan ucapan terima
kasih yang sebesar-besarnya kepada :
1. Ir. Greg. Heliarko S.J., S.S., B.S.T., M.A., M.SC., selaku dekan Fakultas
Teknik Universitas Sanata Dharma Yogyakarta.
2. Agnes Maria Polina, S.Kom., M.Sc., selaku ketua jurusan Fakultas Teknik
Informatika Universitas Sanata Dharma Yogyakarta dan juga selaku dosen
pembimbing I yang dengan sabar membimbing dan memberikan pengarahan
serta saran terbaik bagi penulis selama penyusunan skripsi.
3. Pihak CV. Hafa Car Rental yang telah memberikan informasi yang
dibutuhkan oleh penulis.
4. Bapak, Ibu ,Aprilia Kartika Candra , keluarga ku yang tercinta, terima kasih
atas doa, semangat, dukungan dan kasih sayangnya selama ini.
5. Keluarga besar di Yogyakarta terima kasih atas kasih sayang, perhatian,
dukungan, dan doanya.
6. Keluarga besar bapak Djoko Murtomo di Temanggung : Bapak, Ibu, Mas Rio,
Mbah Sinung, Bulik Wati, Bude atas perhatian, dukungan, dan kasih
xi
sayangnya selama saya selama saya mengerjakan tugas akhir ini. Semoga
rahmat dan limpah karunia Tuhan selalu menyertai kalian.
7. Putri tersayang, atas segala perhatian, kasih sayang, kesabaran, suka, duka
terutama selama penyelesaian tugas akhir ini. Terima kasih karena aku bisa
melewati hari-hari bersamamu, kamu telah merubah warna dan jalan hidupku.
Aku sayang banget sama MAMA. Tunggulah aku, aku pasti akan datang.
8. Andika Gzx atas segala bimbingan, waktu yang sudah diluangkan serta
komputer dan tempat yang sudah disediakan,
9. Komunitas Pomahan.Camp terima kasih atas segala kerja sama, petuah,
bimbingan dan nasehatnya.
10. Teman-teman kost Pomahan : Nico, Budi, Mang Juhai, Andika atas
kebersamaan, dukungan, dan semangatnya.
11. Widi, Gwendi, Mc.dee, Albert, Hasto, Derry atas semangat, dukungan, dan
kegilaannya selama pembuatan tugas akhir ini.
12. Rekan-rekan Teknik Informatika angkatan 2002 atas segala kebersamaan dan
kenangan yang telah kita ukir bersama selama masa perkuliahan, semoga
kekompakan kita bisa terjalin selamanya.
13. Iwan, Cici, Dedek Adya, Koko, Dadang, Mbendol atas segala dukungan dan
perhatian serta telah menemani di kalaku banyak pikiran.
14. Cemany Duck atas segala semangat dan kekompakan kalian, tunggulah aku
pasti akan dating.
15. Dan seluruh pihak yang telah ambil bagian dalam proses penyelesaian tugas
akhir ini yang tidak bisa penulis sebutkan satu per satu.
xii
Dengan rendah hati saya menyadari bahwa tugas akhir ini masih jauh dari
sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas
akhir ini sangat saya harapkan. Akhir kata, semoga tugas akhir ini bermanfaat
bagi semua pihak. Terima kasih.
Yogyakarta, 29 September 2007
Penulis
xiii
DAFTAR ISI
JUDUL ......................................................................................................................
HALAMAN PERSETUJUAN ................................................................................
HALAMAN PENGESAHAN .................................................................................
PERNYATAAN KEASLIAN KARYA .................................................................
HALAMAN MOTTO .............................................................................................
HALAMAN PERSEMBAHAN ..............................................................................
ABSTRAKSI ............................................................................................................
ABSTRACT .............................................................................................................
KATA PENGANTAR .............................................................................................
DAFTAR ISI ............................................................................................................
DAFTAR GAMBAR ...............................................................................................
DAFTAR TABEL ....................................................................................................
i
iii
iv
v
vi
vii
viii
ix
x
xiii
xiii
xx
BAB I PENDAHULUAN
1.1 Latar Belakang Masalah....................................................................
1.2 Rumusan Masalah..............................................................................
1.3 Batasan Masalah.................................................................................
1.4 Tujuan Penelitian................................................................................
1.5 Metodologi Penelitian…………….....................................................
1.6 Sistematika Penulisan ........................................................................
1
2
2
2
2
4
xiv
BAB II LANDASAN TEORI
2.1 Sistem, Informasi dan Sistem Informasi…………………………….
2.1.1 Pengertian Sistem……………………………………………
2.1.2 Pengertian Informasi………………………………………...
2.1.3 Pengertian Sistem Informasi………………………………...
2.2 Data Base…………………………………………………………….
2.3 Pemodelan Data……………………………………………………...
2.3.1 Conceptual Design………………………………………..
2.3.2 Logical Design……………………………………………
2.3.3 Physical Design…………………………………………..
2.4 Pemodelan Proses……………………………………………………
2.5 HTML ( Hypertext Markup Language)……………………………..
2.6 PHP ( Page Hypertext Preposesor)………………………………….
2.6.1 Variabel dalam PHP…………………………………………
2.6.2 Tipe Data……………………………………………..……...
2.6.3 Fungsi………………………………………………………..
2.6.4 Struktur Kemdali / Srtuktur Kontrol………………………...
2.6.4.1 Percabangan…………………………………………
2.6.4.2 Perulangan…………………………………………...
2.6.4.3 Array / Larik…………………………………………
2.6.4.4 Require( ) dan Include( )…………………………….
2.7 MySQL.................................................... ..........................................
5
5
5
6
6
7
7
7
8
8
13
14
15
15
16
17
17
18
19
20
20
xv
BAB III ANALISA DAN PERANCANGAN SISTEM
3.1 Analisis Sistem ..................................................................................
3.1.1 Gambaran Umum Sistem.......................................................
3.1.2 Use Case Diagram.................................................................
3.1.3 DFD........................................................................................
3.1.3.1 Proses Modeling.........................................................
3.1.3.2 Diagram Konteks........................................................
3.1.3.3 Bagan Berjenjang.......................................................
3.1.3.4 Overview Diagram.....................................................
3.1.3.4.1 Overview Diagram Level 0.........................
3.1.3.4.2 Overview Diagram Level 1.........................
3.1.3.5 DFD Gabungan...........................................................
3.1.4 ERD........................................................................................
3.2 Disain Sistem.......... ...........................................................................
3.2.1 Disain Database......................................................................
3.2.1.1 Disain Logical............................................................
3.2.1.2 Uji Normalisasi……………………………………...
3.2.1.3 Disain Fisikal.............................................................
3.2.2 Disain User Interface..............................................................
3.2.2.1 Disain User Interface Sub sistem User......................
3.2.2.2 Disain User Interface Sub sistem Admin...................
3.2.2.3 Desain User Interface Sub sistem Operator…………
23
23
24
25
25
26
26
28
28
31
35
38
39
39
39
40
42
45
45
51
56
xvi
BAB IV. IMPLEMENTASI SISTEM
4.1 Pembuatan Database..........................................................................
4.2 Koneksi Database..............................................................................
4.3 Antar Muka ( User Interface )............................................................
4.3.1 Pembuatan User Interface subsistem User.............................
4.3.2 Pembuatan User Interface subsistem Admin..........................
4.3.3 Pembuatan User Interface subsistem Operator……………..
BAB V. IMPLEMENTASI
5.1 Analisa Manfaat..................................................................................
5.2 Kelebihan Sistem yang Dibuat...........................................................
5.3 Kekurangan Sistem yang Dibuat........................................................
BAB VI. PENUTUP
6.1 Kesimpulan.........................................................................................
6.2 Saran....................................................................................................
DAFTAR PUSTAKA
LAMPIRAN
62
66
68
68
95
123
161
161
162
163
163
xvii
DAFTAR GAMBAR
Gambar Keterangan Halaman
2.1 Simbol Entity 9
2.2 Simbol Aliran Data 9
2.3 Simbol Proses 9
2.4 Simbol Tempat Penyimpanan Data 10
2.5 Entity yang dilarang 10
2.6 Relasi antara entity dengan data store yang dilarang 11
2.7 Contoh penulisan entity dengan simbol nomor 2 11
3.1 Use Case Diagram 24
3.2 Gambar Diagram Konteks 26
3.3 Gambar Bagan Berjenjang 27
3.4 Overview diagram level 0 28
3.5 Overview diagram level 0 29
3.6 Overview diagram level 0 30
3.7 Overview diagram level 1 proses 2 31
3.8 Overview diagram level 1 proses 4 32
3.9 Overview diagram level 1 proses 6 33
3.10 Overview diagram level 1 proses 9 34
3.11 DFD Gabungan User 35
3.12 DFD Gabungan Admin 36
3.13 DFD Gabungan Operator 37
3.14 Gambar ERD 38
3.15 Relasi antar tabel 39
3.16 Relasi antar tabel setelah normalisasi 41
3.17 Halaman registrasi user 45
3.18 Halaman login user 45
3.19 Halaman home user 46
3.20 Halaman edit profil user 46
3.21 Halaman Stok mobil 47
xviii
3.22 Halaman sewa online 48
3.23 Halaman mobil yang anda sewa 49
3.24 Halaman mobil yang anda sewa ( lanjutan ) 49
3.25 Halaman Konfirmasi 50
3.26 Halaman login admin 51
3.27 Halaman home admin 51
3.28 Halaman edit profil admin 52
3.29 Halaman stok mobil 52
3.30 Halaman tambah stok mobil 53
3.31 Halaman ubah mobil 53
3.32 Halaman hapus mobil 54
3.33 Halaman tambah driver 54
3.34 Halaman ubah driver 55
3.35 Halaman hapus driver 55
3.36 Halaman login operator 56
3.37 Halama menu utama operator 56
3.38 Halaman edit profil operator 57
3.39 Halaman lihat stok mobil 57
3.40 Halaman sewa di rental 58
3.41 Halamancek sewa online 58
3.42 Halaman pengembalian mobil 59
3.43 Halaman laporan bulanan 60
3.44 Halaman tambah member 60
3.45 Halaman ubah member 61
3.46 Halaman hapus member 61
4.1 Halaman database rental mobil 66
4.2 Halaman index 68
4.3 Halaman regristrasi member 70
4.4 Halaman login member 71
4.5 Halaman stok mobil 76
xix
4.6 Halaman detail fasilitas 76
4.7 Halaman harga sewa 79
4.8 Halaman edit profil member 81
4.9 Halaman sewa mobil online 85
4.10 Halaman seaw mobil online ( lanjutan ) 92
4.11 Halaman seaw mobil online ( lanjutan 1 ) 93
4.12 Halaman seaw mobil online ( lanjutan 2 ) 94
4.13 Halaman login admin 95
4.14 Halaman home admin 98
4.15 Halaman edit profil admin 100
4.16 Halaman stok mobil 103
4.17 Halaman tambah mobil dan fasilitas 105
.4.18 Halaman ubah mobil 109
4.19 Halaman hapus mobil 114
4.20 Halaman tambah driver 116
4.21 Halaman ubah driver 118
4.22 Halaman hapus driver 121
4.23 Halaman login operator 123
4.24 Halaman home operator 126
4.25 Halaman edit operator 128
4.26 Halaman lihat stok mobil 130
4.27 Halaman penyewaan di rental 133
4.28 Halaman cek sewa online 140
4.29 Halaman pengembalian mobil 13
4.30 Halaman laporan bulanan 148
4.31 Halaman tambah member 152
4.32 Halaman ubah member 154
4.33 Halaman hapus member 158
4.34
xxi
DAFTAR TABEL
Tabel Keterangan Halaman
3.1 Tabel input dan output proses modeling 25
3.2 Tabel Penyewa 42
3.3 Tabel Sewa 42
3.4 Tabel Detail Sewa 42
3.5 Tabel Mobil 43
3.6 Tabel Detail Fasilitas 43
3.7 Tabel Fasilitas 43
3.8 Tabel Driver 43
3.9 Tabel Admin 44
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Perkembangan teknologi informasi dan ilmu pengetahuan yang semakin
pesat saat ini menuntut adanya sistem informasi yang dapat mendukung ilmu
pengetahuan dan teknologi yang ada. Dalam hal ini teknologi informasi dan
sistem informasi dapat menjembatani permasalahan yang ada serta mampu
memudahkan proses berbisnis, yaitu dalam pengolahan data sehingga dapat
dihasilkan informasi yang cepat, tepat dan akurat. Banyak instansi yang
mengalami permasalahan yang cukup signifikan berkaitan dengan sistem
informasi menyangkut perusahaannya yang tidak dapat diabaikan begitu saja.
Permasalahan yang terjadi misalnya ketidakakuratan data, lambatnya
pemrosesan data dan pemborosan waktu.
Salah satu contoh penerapan sistem informasi adalah sistem informasi
pengelolaan rental mobil. Pada dasarnya Rental Mobil Hafa belum memiliki
sebuah system informasi. Maka dengan adanya system informasi ini
diharapkan mampu memberikan informasi yang lebih akurat sehingga
permasalahan yang terjadi bisa teratasi.
Untuk mendapatkan informasi yang cepat dan dapat dipercaya dipilih
teknologi informasi sebagai solusinya, pada tugas akhir ini akan dibahas
tentang Sistem Informasi Pengelolaan Rental Mobil.
2
1.2 Rumusan Masalah
Dari latar belakang masalah di atas maka dapat dirumuskan sebagai
berikut:
Bagaimana mengembangkan Sistem Informasi Rental Mobil yang sesuai
untuk Rental Mobil Hafa.
1.3 Batasan Masalah
Dalam mengimplementasikan sistem pengelolaan rental mobil ini
terdapat berbagai batasan sebagai berikut :
1. Tidak membahas tentang service / perawatan mobil.
2. Tidak membahas masalah jaringan dan keamanan sistem.
3. Implementasi sistem ini menggunakan PHP dan MySQL.
1.4 Tujuan Penelitian
Tujuan dari penulisan tugas akhir ini adalah membuat Sistem Informasi
Pengelolaan Rental Mobil.
1.5 Metodologi Penelitian
Metodologi penelitian ini adalah studi kasus dengan langkah-langkah
sebagai berikut :
1. Survei dan pengambilan data contoh di Hafa Car Rental.
Melakukan survey dengan melaksanakan kegiatan pengumpulan data
yang dilakukan dengan cara penulis berperan aktif dalam setiap tugas dan
3
kewajiban yang diberikan kepada penulis yang berkaitan dengan
permasalahan yang di teliti pada Hafa Car Rental.
2. Studi Literatur
Pengumpulan data dilakukan dengan cara membaca referensi berupa buku-
buku, laporan-laporan, karya ilmiah, makalah di internet dan lain-lainnya
yang berhubungan dengan permasalahan yang terkait
serta mempelajari bahasa pemrograman dan database yang akan
digunakan dalam membangun sistem.
3. Mengembangkan Sistem Informasi Pengelolaan Rental Mobil dengan
tahap – tahap sebagai berikut :
a. Analisa Sistem.
Berisi pembahasan dan analisa sistem secara terperinci.
b. Perancangan Sistem.
Merancang sebuah Sistem Informasi Pengelolaan Rental Mobil yang
sesuai untuk Hafa Car Rental.
c. Implementasi Sistem.
Pada bab ini berkisar pada pembuatan system dan logika program.
d. Pengujian Sistem.
Sistem diuji keakuratan dan kekonsistenan datanya.
4
1.6 Sistematika Penulisan
BAB I PENDAHULUAN
Pada bab ini menjelaskan mengenai latar belakang
masalah,rumusan masalah, batasan masalah, tujuan penelitian,
metodologi penelitian, dan sistematika penulisan
BAB II LANDASAN TEORI
Pada bab ini menjelaskan dasar teori yang digunakan dalam
mendukung penulisan tugas akhir, antara lain : konsep sistem,
informasi, sistem informasi, database, HTML, PHP, dan MySQL.
BAB III ANALISA DAN PERANCANGAN SISTEM
Berisi gambaran umum, analisa sistem dan perancangan sistem
secara terperinci.
BAB IV IMPLEMENTASI SISTEM
Pada bab ini menjelaskan pada pembuatan program berdasarkan
perancangan yang telah dijelaskan pada bab III.
BAB V PENUTUP
Pada bab ini menjelaskan tentang kesimpulan yang diambil dari
penulisan tugas akhir ini serta saran yang diberikan.
BAB II
LANDASAN TEORI
2.1 Sistem, Informasi, dan Sistem Informasi
2.1.1 Sistem
Sistem adalah kumpulan dari elemen-elemen yang berinteraksi
untuk mencapai suatu tujuan tertentu. Definisi tersebut lebih dapat
diterima, karena pada kenyataannya suatu sistem terdiri dari beberapa
elemen atau subsistem. Elemen-elemen tersebut tidak dapat berdiri sendiri-
sendiri dalam suatu sistem tetapi harus saling berinteraksi dan saling
berhubungan untuk membentuk satu kesatuan sehingga tujuan sistem
dapat tercapai. Maka suatu sistem harus mempunyai tujuan tertentu agar
elemen masukan, elemen pengolah dan elemen keluaran dapat ditentukan
dengan tepat.
2.1.2 Informasi
Informasi adalah data yang diolah menjadi bentuk yang lebih
berguna dan lebih berarti bagi yang menerimanya. Informasi sangat
penting dalam suatu organisasi. Suatu sistem yang kurang mendapatkan
informasi akan menjadi kecil dan akhirnya akan habis. Informasi-
informasi yang diperoleh dari suatu sistem dapat digunakan dalam
pengambilan sebuah keputusan serta dalam melakukan tindakan
selanjutnya, sehingga dibutuhkan informasi yang akurat, tepat pada
6
waktunya dan relevan atau bermanfaat bagi penggunanya. Selain itu
informasi harus memiliki nilai informasi yang dapat ditentukan oleh dua
hal yaitu manfaat dan biaya mendapatkannya. Suatu informasi dikatakan
bernilai jika manfaatnya lebih efektif dibandingkan dengan biaya untuk
mendapatkan informasi tersebut. Suatu informasi yang diperoleh mungkin
memiliki beberapa kegunaaan sehingga digunakan tidak hanya oleh satu
pihak saja di dalam suatu organisasi melainkan digunakan bersama-sama.
2.1.3 Sistem Informasi
Definisi sistem informasi menurut Robert A. Leitch dan K. Roscoe
Davis dalam buku “Accounting Information Systems” (1993), adalah suatu
sistem di dalam suatu organisasi yang mempertemukan kebutuhan
pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan
kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu
dengan laporan-laporan yang diperlukan.
2.2 Database
Basis data atau database adalah kumpulan data yang diatur dan
diorganisasikan dalam suatu cara yang sistematis, untuk mengurangi duplikasi
data dan memberikan fasilitas pada sejumlah pengguna pada beberapa
aplikasi. Sedangkan DBMS (Database Management System) adalah suatu cara
yang paling efisien untuk mengelola atau memproses database.
7
Menurut F. Korth (1986), database adalah kumpulan data yang saling
berelasi, berisi informasi untuk pemakainya. Sedangkan DBMS adalah
kumpulan data yang saling berelasi dan set program untuk mengakses
(mengambil, mengubah, menambah) data tersebut.
2.3 Pemodelan Data
Pemodelan data adalah sebuah teknik untuk mengorganisasikan dan
mendokumentasikan data dari sistem. Pada proses pemodelan data, dibagi
menjadi tiga tahap utama, yaitu : tahap conceptual design, tahap logical design
dan tahap physical design.
2.3.1 Conceptual Design
Pada tahap ini akan digambarkan isi dari basis data sebelum data
diimplementasikan pada sistem informasi yang sesungguhnya serta tidak
mempertimbangkan efisiensi program-program yang memanfaatkan data
tersebut. Hasil dari tahap ini berupa conceptual schema yang mengacu
pada suatu conceptual model yaitu ER Model.
2.3.2 Logical Design
Pada tahap ini dilakukan penterjemahan dari conceptual schema ke
model data yang sesuai dengan DBMS yang akan digunakan. Hasil dari
tahap ini berupa logical schema basis data yang mengacu pada suatu
logical data model yaitu Relational Model.
Terdapat 2 langkah utama dalam logical design, yaitu :
8
1. Restrukturisasi ER Diagram
Kegiatan yang dilakukan harus secara berurutan antara lain :
a. Analisa redudansi
b. Hilangkan generalisasi
c. Memecah / menyatukan entitas-entitas dan relasi-relasi
d. Tetapkan kata kunci (primary key)
2. Mengubah dari ER Diagram ke Relational Model
2.3.3 Physical Design
Pada tahap ini logical schema dilengkapi dengan detail-detail
implementasi secara fisik sesuai DBMS yang digunakan.
2.4 Pemodelan Proses
Pemodelan proses adalah sebuah teknik yang digunakan untuk
mengorganisasikan dan mendokumentasikan proses dari sistem. Kegiatan
yang dilakukan pada pemodelan proses, antara lain pembuatan DFD (Data
Flow Diagram). DFD adalah sebuah model proses yang digunakan untuk
menggambarkan aliran dari data yang melalui sebuah sistem dan proses yang
dibentuk oleh sistem. DFD menggambarkan penyimpanan data dan proses
yang mentranformasikan data. DFD menunjukkan hubungan antara data pada
sistem dan proses pada sistem.
9
Simbol-simbol yang digunakan dalam pembuatan DFD, antara lain :
1. Entity
Menggambarkan sumber atau tujuan dari aliran data dari atau ke
sistem. Simbol entity adalah sebagai berikut :
Penyewa
Gambar 2.1 Simbol Entity
2. Aliran data
Menggambarkan aliran data dari satu proses ke proses yang
lainnya. Simbol aliran data adalah sebagai berikut :
Gambar 2.2 Simbol Aliran Data
3. Proses
Proses yang mentransformasikan data secara umum. Simbol proses
adalah sebagai berikut :
Gambar 2.3 Simbol Proses
10
4. Tempat penyimpanan
Merupakan komponen yang berfungsi untuk menyimpan data atau
file. Simbol tempat penyimpanan data adalah sebagai berikut :
Gambar 2.4 Simbol Tempat Penyimpanan Data
Ketentuan-ketentuan yang harus dipatuhi dalam pembuatan DFD agar
tidak terjadi kesalahan, antara lain :
1. Antar entity tidak diijinkan terjadi hubungan atau relasi, seperti contoh
berikut ini :
Gambar 2.5 Entity yang dilarang
2. Tidak boleh ada aliran data antara entity dengan data store, seperti contoh
berikut ini :
11
Gambar 3.6 Relasi antara entity dengan data store yang dilarang
3. Untuk alasan kerapian, entity atau data store boleh digambar beberapa kali
dengan tanda khusus, misalnya diberi nomor, seperti contoh berikut ini :
Admin
A
2
Gambar 2.7 Contoh penulisan entity dengan simbol nomor 2
4. Satu aliran data boleh mengalirkan beberapa struktur data, seperti contoh
berikut ini :
Gambar 2.8 Contoh beberapa struktur data
5. Bentuk anak panah aliran data boleh bervariasi
6. Semua obyek harus mempunyai nama
12
7. Aliran data selalu diawali dan diakhiri dengan proses
8. Semua aliran data harus mempunyai tanda arah
Beberapa petunjuk pembuatan DFD antara lain :
1. Penamaan harus jelas. Sebaiknya menggunakan nama yang mengacu pada
fungsi, yaitu gabungan antara kata kerja yang spesifik. Disarankan untuk
tidak menggunakan nama yang terlalu umum, tetapi gunakan nama yang
mudah dimengerti oleh pemakai.
2. Memberi nomor pada proses. Nomor yang diberikan pada proses tidak
harus menjadi nomor urut. Penomoran dimaksudkan sebagai identifikasi
proses dan memudahkan penurunan (level yang lebih rendah) ke proses
berikutnya.
3. Penggambaran kembali. Ukuran dan bentuk tetap sama dan tanda panah
boleh bervariasi.
4. Hindarilah proses yang mempunyai masukan tetapi tidak mempunyai
keluaran begitu pula sebaliknya, hindarilah proses yang mempunyai
keluaran tetapi tidak mempunyai masukan.
5. Hati-hati dengan aliran data dan proses yang tidak dinamai. Aliran proses
yang tidak diberi nama dapat mengakibatkan elemen data yang saling
tidak berhubungan akan menjadi satu.
13
2.5 HTML (Hypertext Markup Language)
HTML adalah bahasa yang digunakan untuk menulis halaman web. Pada
umumnya dokumen ini berisi informasi atau aplikasi di dalam internet. Untuk
menyampaikan ide pada web browser, HTML menggunakan apa yang
dinamakan tag. Tag selalu ditulis di antara tanda lebih kecil dan tanda lebih
besar (<tag>). Dokumen HTML dapat dibuat dengan menggunakan HTML
editor (misalnya Frontpage atau Macromedia Dreamweaver) atau dengan
editor teks biasa (misalnya notepad). Dokumen HTML biasanya diberi nama
dengan cara menambahkan ekstensi .htm atau .html di belakang nama
dokumen (contoh : dokumen.htm atau dokumen.html).
Pada suatu dokumen HTML terdapat tag-tag yang terdiri atas sebuah
kurung sudut kiri (<, tanda lebih kecil), sebuah nama tag, sebuah kurung sudut
kanan (>, tanda lebih besar). Tag-tag tersebut umumnya berpasangan,
contohnya <HTML> dengan </HTML>. Tag pertama <HTML> menunjukkan
tag awal yang berarti awal elemen, sedangkan tag kedua </HTML>
menunjukkan tag akhir yang berarti akhir elemen.
Secara umum struktur dokumen HTML terdiri dari tiga tag utama yaitu tag
HTML, HEAD dan BODY. Struktur dasar penulisan HTML yaitu :
<HTML>
<HEAD>
… informasi tentang dokumen HTML, misalnya judul dokumen
</HEAD>
<BODY>
… informasi yang ditampilkan dalam browser web
</BODY>
</HTML>
14
Setiap dokumen HTML dibuka dengan tag<HTML> dan ditutup dengan tag
</HTML>. Dapat juga diberi judul dengan tag<TITLE> yang harus berada di
dalam <HEAD>.
2.6 PHP (Page Hipertext Preposesor)
PHP adalah bahasa server side scripting yang menyatu dengan HTML
untuk membuat halaman web yang dinamis. Maksud dari server side scripting
adalah sintaks dan perintah-perintah yang diberikan akan sepenuhnya
dijalankan di server tetapi disertakan pada dokumen HTML. Pembuatan
program ini merupakan kombinasi antara PHP sendiri sebagai bahasa
pemrograman dan HTML sebagai pembangunan halaman web.
PHP menawarkan koneksitas yang baik dengan beberapa basis data, antara
lain Oracle, Sybase, mSQL, MySQL, Solid, PostgreSQL, Adabas, Filepro,
Velocis, dBase, Unix dbm dan tak terkecuali semua database ber-interface
ODBC. Juga dapat berintegrasi dengan beberapa library eksternal yang
membuat anda dapat melakukan segalanya mulai dari membuat dokumen PDF
hingga mem-parse XML. PHP juga mendukung komunikasi dengan layanan
lain melalui protocol IMAP, SNMP, NNTP, POP3 atau bahkan HTTP. Hampir
seluruh aplikasi berbasis web dapat dibuat dengan PHP. Namun kekuatan
utama adalah konektivitas basis data dengan web.
15
Struktur dasar penulisan PHP dapat dilihat pada contoh di bawah ini :
<HTML>
<HEAD>
<TITLE>PHP</TITLE>
</HEAD>
<BODY>
<?php echo “Belajar PHP”; ?>
</BODY>
</HTML>
2.6.1 Variabel dalam PHP
Variabel dalam PHP ditandai dengan tanda dolar ($). Variabel dalam
PHP bersifat case sensitive sama halnya dengan bahasa C.
2.6.2 Tipe Data
PHP memiliki 6 buah tipe data, yaitu :
a. Empat tipe skalar :
− boolean
− integer
− floating-point number (float)
− string
b. Dua tipe gabungan :
− array
16
− object
2.6.3 Fungsi
Fungsi pada PHP ada yang mempunyai nilai balik ada juga yang
tidak mempunyai nilai balik. Fungsi beragumen juga dikenal di PHP baik
dengan teknik passing by value dan passing by reference. Perintah untuk
membuat fungsi dalam PHP adalah fuction. Perintah return yang
digunakan untuk mengembalikan nilai tertentu.
fuction nama_fungsi(argumen) { kode perintah }
2.6.4 Struktur Kendali / Struktur Kontrol
Ada dua jenis struktur kendali didalam PHP, yaitu : struktur
percabangan dan struktur perulangan.
2.6.4.1 Percabangan
Perintah percabangan adalah perintah yang memungkinkan
pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi
tertentu (sebagai pengambilan keputusan). Ada 3 macam perintah
percabangan, yaitu : IF, IF...ELSE, dan SWITCH.
a. IF
IF digunakan untuk menjalankan satu atau lebih perintah yang
menyatakan keadaan. Format penulisannya adalah sebagai berikut :
17
If (kondisi) { Perintah yang akan dijalankan jika kondisi benar }
b. IF...ELSE
IF...ELSE mirip dengan perintah IF hanya saja didalam IF...ELSE
digunakan untuk banyak blok perintah. Format penulisannya adalah :
If (kondisi1) { Perintah 1 yang akan dijalankan jika kondisi1 benar } Elseif (kondisi2) {
Perintah 2 yang akan dijalankan jika kondisi 1 bernilai salah dan kondisi 2 bernilai benar
} Else { Perintah yang dijalankan jika kondisi 1 dan 2 salah }
c. SWITCH
Format penulisan perintah SWITCH adalah :
switch (kondisi) { case konstanta1 : perintah1; break; case konstanta2 : perintah2; break; default : perintah default; }
18
2.6.4.2 Perulangan
Perulangan digunakan untuk mengulang suatu perintah tanpa
menulis perintah yang akan diulang sebanyak perulangan yang diinginkan.
Didalam PHP ada tiga macam perintah pengulangan, yaitu : FOR,
WHILE, dan DO...WHILE.
a. FOR
Perintah FOR digunakan untuk mengulang perintah dengan jumlah
perulangan yang sudah diketahui. Pada perintah FOR tidak ada kondisi
yang diuji yang diperlukan hanyalah mendeklarasikan nilai awal dan
akhir variabel penghitung. Nilai variabel penghitung secara otomatis
bertambah atau bekurang setiap kali perulangan dilaksanakan. Format
penulisannya adalah :
for ($i=nilai_awal, $i=nilai_akhir, $i++ atau $i--) {
perintah yang akan dijalankan }
b. WHILE
Perintah WHILE digunakan untuk mengulang sebuah perintah sampai
kondisi tertentu bernilai salah. Perulangan akan terus berjalan selama
kondisi masih bernilai benar. Format penulisan perintahnya adalah :
while (kondisi) { perintah yang akan dijalankan }
c. DO...WHILE
Perintah ini mirip dengan perintah WHILE. Proses perulangan akan
berjalan selama kondisi yang diperiksa di while bernilai benar dan
19
perulangan dihentikan jika kondisinya sudah bernilai salah. Perbedaan
WHILE dan DO...WHILE adalah letak dari kondisi yang diperiksa.
Pada perintah WHILE terletak di awal perulangan sehingga sebelum
masuk ke perulangan kondisi tersebut harus bernilai benar. Sedangkan
pada DO...WHILE, kondisi diperiksa diakhir perulangan. Ini berarti
paling sedikit sebuah perulangan akan dilakukan DO...WHILE, karena
untuk masuk perulangan tidak ada kondisi yang harus dipenuhi.
Format penulisan perintahnya adalah :
do { perintah yang akan dijalankan }while (kondisi)
2.6.4.3 Array / Larik
Array pada PHP mirip dengan array dalam bahasa C. Indeks larik
dimulai dari indeks 0. Untuk menginisialisasi larik, ada beberapa cara
yang dapat dilakukan.
$b[] = 'a';
$b[] = 'b';
$b[] = 'c';
Array diatas akan setara dengan inisialisasi array seperti di bawah ini:
$b[0] = 'a';
$b[1] = 'b';
$b[2] = 'c';
20
2.6.4.4 Require( ) dan Include( )
Fungsi require( ) adalah pernyataan yang berfungsi menukar fungsi
require( ) tersebut dengan isi file yang ditunjuk oleh fungsi tersebut. Fungsi
include( ) adalah sebuah fungsi yang bertujuan untuk memasukkan atau
mengikutsertakan file yang ditunjuk serta mengevaluasi file tersebut.
2.7 MySQL
MySQL merupakan database yang paling populer. MySQL didistribusikan
secara gratis di bawah lisensi GPL (General PublicLicense ), sehingga setiap
orang bebas menggunakan MySQL, namun tidak boleh dijadikan produk yang
bersifat komersial.
MySQL sebenarnya merupakan turunan dari database SQL (Structured
Query Language). SQL adalah sebuah konsep pengoperasian database,
terutama untuk pemilihan atau seleksi dan pemasukan data, yang
memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
Sistem database sangat handal dalam melakukan proses perintah SQL, yang
dibuat oleh pengguna maupun aplikasinya.
MySQL memiliki keunggulan antara lain :
1. Dapat menangani jutaan pengguna dalam waktu yang bersamaan.
2. Mampu menampung lebih dari 50.000.000 record.
3. Dapat mengeksekusi perintah dengan cepat.
4. Memiliki user system yang mudah dan efisien.
21
MySQL menggunakan bahasa Structured Query Language (SQL). SQL
merupakan bahasa yang telah distandarisasi dan digunakan dalam mengakses
dan mengelola server database. Di dalam SQL terdapat 3 sub bahasa, yaitu :
1. Data Definition Language (DDL)
DDL adalah perintah SQL yang digunakan untuk mendefinisikan atau
mengatur objek-objek yang akan menampung atau mengelola record data.
Perintah yang digolongkan kedalam DDL adalah :
- CREATE : untuk membuat objek.
- ALTER : untuk memodifikasi objek.
- DROP : untuk menghapus objek.
Objek yang dimaksud misalnya database dan tabel.
2. Data Manipulation Language (DML)
DML adalah perintah SQL yang digunakan untuk mengelola record data,
seperti menambah, menghapus, mengubah, dan menampilkannya.
Perintah yang digolongkan kedalam DML adalah :
- INSERT : untuk menambahkan record data.
- UPDATE : untuk mengubah record data.
- DELETE : untuk menghapus record data.
- SELECT : untuk menampilkan data.
3. Data Control Language (DCL)
DCL adalah perintah yang digunakan untuk memberi hak-hak akses
tertentu bagi setiap user.
Perintah yang digolongkan kedalam DCL adalah :
22
- GRANT : untuk memberi hak-hak tertentu kepada user.
- REVOKE : untuk mencabut hak-hak dari user.
Grant dan revoke diberikan oleh user yang mempunyai hak untuk
memberikan grant dan revoke atau administrator (root).
23
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Dalam tahap analisis sistem ini akan disajikan pemodelan sistem
dalam bentuk Use Case Diagram, ERD dan DFD untuk Sistem Informasi
Pengelolaan Rental Mobil.
3.1.1 Gambaran Umum Sistem
Sistem ini dibuat untuk memudahkan para pelanggan untuk menyewa
mobil via website. Pelanggan dapat melihat jenis-jenis mobil apa saja yang masih
ada, daftar harga sewa mobil, fasilitas pendukung mobil, pelanggan juga dapat
memesan mobil jauh-jauh hari sebelumnya. Selain itu dikembangkan sistem
intranet untuk mengelola rental mobil mengenai data-data mobil yang ada seperti :
pembayaran sewa mobil dari pelanggan. Dengan adanya sistem ini diharapkan
Pengelolaan rental mobil dapat menjadi lebih baik.
24
3.1.2 Use Case Diagram
Use Case Diagram dari Sistem Informasi Pengelolaan Rental Mobil
dapat dilihat pada Gambar 3.1.
Login operator
Operator
Pengembalian
Sewa di Rental
Laporan Bulanan
Logout
Operator
<<depend on>>
Sub sistem operator
Update
User
Gambar 3.1 Use Case Diagram
25
3.1.3 DFD
3.1.3.1 Proses Modeling
Proses modeling digunakan untuk mengorganisasikan dan
mendokumentasikan proses dari sistem. Tabel input output proses modeling untuk
Sistem Informasi Pengelolaan Rental Mobil dapat dilihat pada tabel 3.1.
ENTITAS INPUT OUTPUT
Penyewa
Data Penyewa Baru,Data
Penyewa, Data Penyewa,
Validasi Login,
Nama_Lengkap dan Password,
Data Penyewa, Update Data
Penyewa, Login peminjam
valid, Fasilitas Mobil, Detail
Fasilitas, Data Mobil
Informasi Stok Mobil, Harga
Sewa, Fasilitas Mobil, Informasi
Update data Penyewa, Status
Logout Penyewa
Admin
Nama_Lengkap dan password,
Validasi Login, Data Admin,
Data Penyewa, Login admin
valid, Data Driver
Informasi update Data Admin,
Informasi update Mobil,
Informasi update Fasilitas,
Informasi update Driver,
Informasi update Detail,
Fasilitas, Status Logout Admin
Operator
Nama Lengkap dan password,
Validasi Login, Data Operator,
Update Data Penyewa, Data
Penyewa, Login Operator
Valid
Informasi update Data Operator,
Informasi Penyewaan, Informasi
update Penyewa, Informasi
Pengembalian Mobil, Informasi
Penyewaan Mobil,
Tabel 3.1 Tabel input output proses modeling
26
3.1.3.2 Diagram Konteks
Diagram Konteks digunakan untuk merepresentasikan elemen sistem
sebagai sebuah proses tunggal dengan input dan output data yang
ditunjukkan oleh panah masuk dan keluar. Diagram konteks untuk Sistem
Informasi Pengelolaan Rental Mobil dapat dilihat pada Gambar 3.2.
Gambar 3.2 Gambar Diagram Konteks
3.1.3.3 Bagan Berjenjang (Decomposition Diagram)
Bagan berjenjang digunakan untuk menggambarkan
dekomposisi/hirarki dari sistem. Penggambaran bagan berjenjang untuk
Sistem Informasi Pengelolaan Rental Mobil dapat dilihat pada Gambar 3.3.
27
G
am
bar
3.3
Gam
bar
Bagan
Ber
jen
jan
g
28
3.1.3.4 Overview Diagram
Berikut ini adalah overview diagram untuk Sistem Informasi Pengelolaan Rental
Mobil :
3.1.3.4.1 Overview Diagram Level 0
Gambar 3.4 Overview diagram level 0
29
Gambar 3.5 Overview diagram level 0
30
Gambar 3.6 Overview diagram level 0
31
3.1.3.4.2 Overview diagram Level 1
Overview diagram level 1 proses 2
Gambar 3.7 Overview diagram level 1 proses 2
32
Overview diagram level 1 proses 4
Gambar 3.8 Overview diagram level 1 proses 4
33
3.1.3.4.3 Overview diagram level 1 proses 6
Overview diagram level 1 proses 6
Gambar 3.9 Overview diagram level 1 proses 6
34
3.1.3.4.4 Overview Diagram level 1 proses 9
Overview diagram level 1 proses 9
Gambar 3.10 Overview diagram level 1 proses 9
35
3.1.3.5 DFD Gabungan
DFD gabungan untuk Sistem Informasi Pengelolaan Rental Mobil dapat dilihat pada
gambar 3.11.
Gambar 3.11 DFD gabungan User
36
Gambar 3.12 DFD gabungan Admin
37
Gambar 3.13 DFD gabungan Operator
38
3.1.4 ERD
Gambar ERD untuk Sistem Informasi Pengelolaan Rental Mobil dapat dilihat
pada Gambar 3.14.
Gambar 3.14 Gambar ERD
39
3.2 Disain Sistem
Dalam tahap disain sistem ini akan disajikan mengenai disain database dan
disain user interface untuk Sistem Informasi Pengelolaan Rental Mobil.
3.2.1 Disain Database
3.2.1.1 Disain Logical
Sistem ini menggunakan 5 tabel yaitu tabel Penyewa, tabel Sewa, tabel
Detail Sewa, tabel Mobil, tabel Driver dan tabel Fasilitas. Relasi antar tabel di
dalam disain database dapat dilihat pada gambar 3.15 berikut :
Gambar 3.15 Relasi antar tabel
40
3.2.1.2 Uji Normalisasi
a) Bentuk Normal I
Sebuah tabel memenuhi bentuk normal I bila pada setiap
perpotongan baris dan kolom hanya terdapat satu harga data.
Berdasarkan tabel yang telah dibuat, baik itu tabel Penyewa, tabel
Sewa, tabel Mobil, tabel Driver, maupun tabel Fasilitas tidak ditemukan
adanya harga data yang berjumlah lebih dari satu pada setiap perpotongan
baris dan kolom-nya. Sehingga dengan demikian kelima tabel tersebut
memenuhi bentuk normal I.
b) Bentuk Normal II
Sebuah tabel memenuhi bentuk normal II bila setiap atribut bukan
kunci benar-benar bergantung penuh pada primary key.
Berdasarkan tabel yang telah dibuat, pada tabel Sewa dan tabel
Fasilitas ditemukan adanya atribut bukan kunci yang tidak bergantung
penuh pada primary key. Sehingga dengan demikian dua tabel tersebut
tidak memenuhi bentuk normal II.
41
c) Bentuk Normal III
Berdasarkan tabel yang telah dibuat diatas, maka perlu dilakukan
pemecahan pada tabel Sewa dan tabel Fasilitas, sehingga terbentuk dua
tabel baru yaitu tabel Detail Sewa dan tabel Detail Fasilitas. Sehingga
dengan demikian ketiga tabel tersebut memenuhi bentuk normal III.
Sehingga setelah proses normalisasi dilakukan, Relational Model
yang terbentuk adalah sebagai berikut :
Gambar 3.16 Relasi antar tabel setelah normalisasi
42
3.2.1.3 Disain Fisikal
Disain fisikal dari sistem yang dibuat adalah sebagai berikut :
1. Tabel Penyewa
Tabel 3.2 Tabel Penyewa
Nama Field Tipe Data Ukuran Field
ID_Penyewa varchar 25
Nama_lengkap varchar 55
Password varchar 15
Email varchar 55
Jenis_kelamin varchar 1
Pekerjaan varchar 15
Alamat varchar 50
Kota varchar 20
Propinsi varchar 20
2. Tabel Sewa
Tabel 3.3 Tabel Sewa
Nama Field Tipe Data Ukuran Field
No_Nota int 10
ID_Penyewa varchar 25
Tgl_Sewa date
Jaminan varchar 15
3. Tabel Detail Sewa
Tabel 3.4 Tabel Detail Sewa
Nama Field Tipe Data Ukuran Field
No_Nota int 10
ID_Driver int 5
No_Mobil varchar 8
Tgl_Kembali date
Denda int 15
Pembayaran int 15
43
4. Tabel Mobil
Tabel 3.5 Tabel Mobil
Nama Field Tipe Data Ukuran Field
No_Mobil varchar 8
Nama_Mobil varchar 25
Jenis_Mobil varchar 20
Tahun_Pembuatan varchar 5
Harga Sewa int 15
Kapasitas_Penumpang int 3
Status_Mobil varchar 7
5. Tabel Detail Fasilitas
Tabel 3.6 Tabel Detail Fasilitas
Nama Field Tipe Data Ukuran Field
No_Mobil varchar 8
Kode_Fasilitas int 10
6. Tabel Fasilitas
Tabel 3.7 Tabel Fasilitas
Nama Field Tipe Data Ukuran Field
Kode_Fasilitas int 10
Nama_fasilitas varchar 50
7. Tabel Driver
Tabel 3.8 Tabel Driver
Nama Field Tipe Data Ukuran Field
ID_Driver int 5
Nama varchar 50
Alamat varchar 100
No_Telp varchar 15
44
8. Tabel Admin
Tabel 3.9 Tabel Admin
Nama Field Tipe Data Ukuran Field
Username varchar 20
Password varchar 15
Alamat varchar 50
No_Telp int 15
Status varchar 20
45
3.2.2 DESAIN USER INTERFACE
3.2.2.1 Desain User Interface Sub Sistem User
1. FORM REGISTRASI
DAFTAR MEMBER
Nama Member :
Email :
Pekerjaan :
Jenis Kelamin :
Password :
Kota :
Propinsi :
Setuju Batal
Alamat :
Pria Wanita
Gambar 3.17 FORM REGISTRASI
2. FORM LOGIN
User Name :
Password :
Login Keluar
Setelah anda melaukukan login, anda dapat melakukan transaksi sewa mobil
Gambar 3.18 FORM LOGIN
46
3. MENU UTAMA
Gambar 3.19 FORM MENU UTAMA
4. EDIT PROFIL MEMBER
Gambar 3.20 EDIT PROFIL MEMBER
47
5. STOK MOBIL, HARGA SEWA, FASILITAS
Gambar 3.21 STOK MOBIL, HARGA SEWA, FASILITAS
48
6. SEWA ONLINE
Gambar 3. 22 SEWA ONLINE
49
7. MOBIL YANG ANDA SEWA
Gambar 3.23 FORM MOBIL YANG ANDA SEWA
8. MOBIL YANG ANDA SEWA ( LANJUTAN)
Gambar 3.24 FORM MOBIL YANG ANDA SEWA
50
9. KONFIRMASI SEWA
Gambar 3.25 FORM KONFIRMASI SEWA
51
3.2.2.2 Desain User Interface Sub Sistem Admin
1. LOGIN
Gambar 3.26 LOGIN ADMIN
2. MENU UTAMA
� Edit Profil Admin
� Lihat Stock Mobil
� Update Stock Mobil
- Tambah Mobil- Ubah Mobil- Hapus Mobil
� Update Data Driver
- Tambah Driver- Ubah Driver- Hapus Driver
� LOGOUT
Gambar 3.27 MENU UTAMA
52
3. EDIT PROFIL ADMIN
Gambar 3.28 EDIT PROFIL ADMIN
4. LIHAT STOK MOBIL
Gambar 3.29 LIHAT STOK MOBIL
53
5. UPDATE STOK MOBIL, HARGA SEWA DAN FASILITAS
Gambar 3.30 TAMBAH STOK MOBIL, HARGA SEWA DAN FASILITAS
6. UBAH MOBIL
Gambar 3.31 UBAH MOBIL
54
7. HAPUS MOBIL
Gambar 3.32 HAPUS MOBIL
8. UPDATE DATA DRIVER
Gambar 3.33 TAMBAH DRIVER
55
9. UPDATE DATA DRIVER
Gambar 3.34 UBAH DRIVER
10. UPDATE DATA DRIVER
Gambar 3.35 HAPUS DRIVER
56
3.2.2.3 Desain User Interface Sub Sistem Operator
1. LOGIN OPERATOR
Gambar 3.36 LOGIN OPERATOR
2. MENU UTAMA OPERATOR
Gambar 3.37 MENU UTAMA OPERATOR
57
3. EDIT PROFIL OPERATOR
Gambar 3.38 EDIT PROFIL OPERATOR
4. LIHAT STOK MOBIL
Gambar 3.39 LIHAT STOK MOBIL
58
5. PENYEWAAN MOBIL
Gambar 3.40 SEWA DI RENTAL
6. CEK SEWA MOBIL
Gambar 3.41 CEK SEWA ONLINE
59
7. FORM PENGEMBALIAN MOBIL
Gambar 3.42 FORM PENGEMBALIAN MOBIL
60
8. LAPORAN BULANAN
Gambar 3.43 FORM LAPORAN BULANAN
9. FORM TAMBAH MEMBER
Gambar 3.44 FORM UPDATE MEMBER
61
10. FORM UPDATE MEMBER
Gambar 3.45 FORM UPDATE MEMBER
11. FORM HAPUS MEMBER
Gambar 3.46 FORM HAPUS MEMBER
62
BAB IV
IMPLEMENTASI SISTEM
Setelah selesai merancang dan menganalisa sistem yang akan dibuat,
langkah selanjutnya adalah mencoba mengimplementasikan ke dalam bahasa yang
dapat dimengerti oleh mesin.
Sistem ini dibuat dengan spesifikasi Software dan Hardware sebagai
berikut :
Spesifikasi Software
1. Sistem Operasi Windows XP Professional.
2. Macromedia Dreamweaver MX
3. AppServ v2.5.7 dengan MySQL 5.0.24a dan PHP 5.1.6
4. Microsoft Internet Explorer.
5. Adobe Photoshop 7.0
Spesifikasi Hardware
1. Prosessor Intel Pentium IV 1.7 GHz
2. Memory 512 MB
3. HardDisk 40 GB
4.1 Pembuatan Database
Pertama – tama yang dilakukan dalam pembangunan Sistem
Informasi Pengelolaan Rental Mobil ini adalah membuat database terlebih
63
dahulu dengan menggunakan database MySQL. Jadi sistem yang dibuat
hanya mengacu pada satu database yang diberi nama rental mobil.
Adapun langkah pembuatan database meet adalah sebagai berikut :
Database terdiri dari enam tabel utama. Struktur tabel-tabel dalam situs
penawaran properti berbasis web adalah sebagai berikut :
a. Tabel admin, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `admin` (
`Id_Admin` int(2) NOT NULL auto_increment,
`Username` varchar(20) collate latin1_general_ci NOT NULL,
`Password` varchar(15) collate latin1_general_ci NOT NULL,
`Alamat` varchar(50) collate latin1_general_ci NOT NULL,
`No_Telp` int(15) NOT NULL,
PRIMARY KEY (`Id_Admin`)
)
b. Tabel detailfasilitas, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `detailfasilitas` (
`No_Mobil` varchar(8) collate latin1_general_ci NOT NULL,
`Kode_Fasilitas` int(10) NOT NULL
)
c. Tabel detailsewa, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `detailsewa` (
`No_Nota` int(10) NOT NULL,
`ID_Driver` int(5) default NULL,
`No_Mobil` varchar(8) collate latin1_general_ci NOT NULL,
64
`Biaya` int(50) NOT NULL,
`Tgl_Kembali` date NOT NULL,
`Denda` int(15) NOT NULL
) `jenis_keg` varchar(20) NOT NULL,
`judul_kegiatan` varchar(50) NOT NULL,
`tanggal_keg` date NOT NULL,
`browsephoto_keg` varchar(100) default NULL,
`ket_keg` longtext NOT NULL,
PRIMARY KEY (`Id_kegiatan`)
)
d. Tabel driver, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `driver` (
`ID_Driver` int(5) NOT NULL,
`Nama` varchar(50) collate latin1_general_ci NOT NULL,
`Alamat` varchar(100) collate latin1_general_ci NOT NULL,
`No_Telp` varchar(15) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`ID_Driver`)
)
e. Tabel fasilitas, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `fasilitas` (
`Kode_Fasilitas` int(10) NOT NULL,
`Nama_Fasilitas` varchar(50) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`Kode_Fasilitas`)
))
f. Tabel mobil, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `mobil` (
`No_Mobil` varchar(8) collate latin1_general_ci NOT NULL,
65
`Nama_Mobil` varchar(25) collate latin1_general_ci NOT NULL,
`Jenis_Mobil` varchar(20) collate latin1_general_ci NOT NULL,
`Tahun_Pembuatan` varchar(5) collate latin1_general_ci NOT NULL,
`Harga_Sewa` int(15) NOT NULL,
`Kapasitas_Penumpang` int(3) NOT NULL,
`Status_Mobil` varchar(7) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`No_Mobil`)
)
g. Tabel penyewa, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `penyewa` (
`ID_Penyewa` int(2) NOT NULL auto_increment,
`Nama_Lengkap` varchar(55) collate latin1_general_ci NOT NULL,
`Password` varchar(15) collate latin1_general_ci NOT NULL,
`Email` varchar(55) collate latin1_general_ci NOT NULL,
`Jenis_Kelamin` varchar(1) collate latin1_general_ci NOT NULL,
`Pekerjaan` varchar(15) collate latin1_general_ci NOT NULL,
`Alamat` varchar(50) collate latin1_general_ci NOT NULL,
`Kota` varchar(20) collate latin1_general_ci NOT NULL,
`Propinsi` varchar(20) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`ID_Penyewa`)
)
h. Tabel sewa, tabel dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `sewa` (
`No_Nota` int(10) NOT NULL auto_increment,
`ID_Penyewa` varchar(25) collate latin1_general_ci NOT NULL,
`Tgl_Sewa` date NOT NULL,
`Jaminan` varchar(50) collate latin1_general_ci NOT NULL,
`Dp` int(50) NOT NULL,
PRIMARY KEY (`No_Nota`)
66
)
Hasil terakhir database meet menggunakan MySQL dapat dilihat
pada gambar 4.1.
Gambar 4.1 Halaman Database rentalmobil
4.2 Koneksi Database
Tabel – tabel yang telah dibuat belum dapat terhubung dengan
sistem. Untuk menghubungkan MySQL dengan sistem, maka digunakan
sintak sebagai berikut :
<?php
$db_host="localhost";
$db_database="rentalmobil";
$db_user="root";
$db_pass="";
function opendb()
{
67
global $db_con,$db_select,$db_host,$db_user,$db_pass,$db_database;
$db_con=mysql_connect($db_host,$db_user,$db_pass);
$db_select=mysql_select_db($db_database);
}
function querydb($query)
{
global $result;
$result=mysql_query($query) or die ("gagal melakukan query = $query");
return $result;
}
function closedb()
{
global $db_con;
mysql_close($db_con);
}
?>
Dalam melakukan koneksi, empat variabel yang dideklarasikan adalah :
1. db_host = digunakan untuk menunjuk nama host dari komputer
server.
2. db_database= digunakan untuk menunjuk nama database yang
akan diakses.
3. db_user = digunakan untuk menunjuk nama user yang bertugas
sebagai administrator database dalam MySQL.
4. db_pass= password administrator database MySQL.
68
4.3 Antar Muka (User Interface)
Berikut ini merupakan halaman antar muka pemakai (user
interface) situs Hafa Car Rental :
4.3.1 Pembuatan User Interface Subsistem User
4.3.1.1 Halaman index user
Gambar 4.2 Halaman index
Melalui halaman index, user dapat melakukan beberapa hal,
diantaranya adalah :
1. Melakukan registrasi sebagai member Hafa Car Rental.
2. Melakukan login untuk melakukan transaksi sewa mobil.
3. Melihat stok Mobil di Hafa Car Rental.
4. Melihat daftar harga sewa mobil di Hafa Car Rental.
Tampilan halaman index dibuat dengan menggunakan file index.php.
Isi file index.php adalah sebagai berikut:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head>
69
<body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="800" height="29" colspan="2"> <div id="navcontainer"> <ul id="navlist"> <li id="active"><a id="current" href="index.php"><u>H</u>OME</a></li> <li><a href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td width="253" valign="top" class="Border"><p><b>Menu Utama :</b></p> <p> <ul> <li><a href="daftarmember.php" target="_blank">Registrasi Member</a></li> <li><a href="login.php" >Login</a></li> </ul> <p></p></td> <td width="537" height="205" class="Border"><BR><BR><BR> <table width="75%" border="0" align="center" cellpadding="2"> <tr> <td> <h1 align="center"> HOME</h1> </td> </tr> </table> <br> <br> <br> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
70
4.3.1.2 Halaman Registrasi Member
Gambar 4.3 Halaman Registrasi Member
Gambar 4.3 akan muncul jika user ingin mendaftar sebagai member.
Tampilan halaman registrasi member dibuat dengan menggunakan file
daftarmember.php. Isi file daftarmember.php adalah sebagai berikut:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr>
71
<td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li><a href="index.php"><u>H</u>OME</a></li> <li><a href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="352" colspan="2" align="center" class="Border"> <? include "inc_daftarmember.php"; ?> <p>Setelah anda melaukukan registrasi member, anda dapat melakukan login. </p></td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
4.3.1.3 Halaman Login
72
Gambar 4.4 Halaman Login Member
Gambar 4.4 akan muncul jika user ingin melakukan login member.
Script halaman untuk melakukan login member adalah:
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li><a href="index.php"><u>H</u>OME</a></li> <li><a href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="352" colspan="2" align="center" class="Border"> <? include "inc_login.php"; ?> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php include "koneksi.inc"; opendb(); if(isset($_POST['Submit'])) { $in_uname=$_POST['nama']; $in_pass=$_POST['password']; $sql="SELECT * FROM penyewa WHERE Nama_Lengkap = '$in_uname' and Password = '$in_pass'"; querydb($sql); $dt=mysql_fetch_assoc($result); $data_login=mysql_num_rows($result); if ($data_login==1)
73
{ $_SESSION['rental']=$dt['ID_Penyewa']; echo "<a href='home.php'>Silahkan menuju halaman penyewa</a> -> "; } else { echo "<div id='warning'>Username atau password anda salah !</div>"; echo "<a href='login.php'>Silahkan ulangi</a>"; } } else { ?> <h2 align="center"> LOGIN</h2> <form action="<? $_SERVER['PHP_SELF']; ?>" method="post"> <table width="45%" border="0" align="center" cellpadding="2"> <tr> <td width="32%"><strong>Nama Member</strong></td> <td width="4%">:</td> <td width="64%"> <input name="nama" type="text" size="30"></td> </tr> <tr> <td><strong>Password</strong></td> <td>: </td> <td> <input name="password" type="password" size="30"></td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="Submit" value="Login"> <input type="reset" name="Reset" value="Keluar" onClick="javascript:history.go(-1)"></td> </tr> </table> </form> <center> Setelah anda melaukukan login, anda dapat melakukan transaksi sewa mobil </center> <? } closedb(); ?>
74
4.3.1.4 Halaman Stok Mobil
Gambar 4.6 Halaman Teknologi Tepat Guna
Gambar 4.6 akan muncul jika user ingin melihat teknologi-teknologi
yang ada dan sedang diteliti oleh MeET. Halaman teknologi tepat guna ini
juga dilengkapi dengan pencarian. Dimana user dapat melakukan pencarian
teknologi. Script halaman untuk melakukan pencarian
Gambar 4.5 Halaman Stok Mobil
Melalui halaman stok mobil, user dapat melihat stok mobil apa saja
yang masih ada di Hafa Car Rental . Tampilan halaman stok mobil dibuat
dengan menggunakan file stokmobil.php. Isi file stokmobil.php adalah
sebagai berikut:
75
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; } //--> </script> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li> <? if (empty($_SESSION['rental'])) { echo "<a href='index.php'><u>H</u>OME</a>"; } else { echo "<a href='home.php'><u>H</u>OME</a>"; } ?> </li> <li ><a id="current" href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li ><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> STOCK MOBIL</h2> <? include "inc_stokmobil.php"; ?> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
76
<form action="<? echo "detailfasilitas.php?nomobil=$_GET[nomobil]"; ?>" method="post""> <table width="100%" border="1"> <tr bgcolor="#999999"> <th width="34%">Nama mobil</th> <th width="25%">Jenis mobil</th> <th width="41%">Plat nomor</th> </tr> <?php include "koneksi.inc"; opendb(); $sql="SELECT * FROM mobil GROUP BY Nama_Mobil"; querydb($sql); while ($data_mobil=mysql_fetch_assoc($result)) { echo "<tr>"; echo " <td>$data_mobil[Nama_Mobil]</td>"; echo " <td align=center>$data_mobil[Jenis_Mobil]</td>"; $sql2="SELECT No_Mobil FROM mobil where Nama_Mobil='$data_mobil[Nama_Mobil]'"; $result2=mysql_query($sql2); echo " <td align=center><select name='nomobil' style='width:200px;' onChange=MM_jumpMenu('parent',this,0)>"; echo "<option value=''>- Lihat detail</option>"; while ($data_no=mysql_fetch_assoc($result2)) { echo "<option value='detailfasilitas.php?nomobil=$data_no[No_Mobil]'>$data_no[No_Mobil]</option>"; } echo "</select></td>"; echo "</tr>"; } closedb(); ?> </table> </form>
4.3.1.5 Halaman Detail Fasilitas
Gambar 4.6 Halaman Detail Fasilitas
77
Halaman detail fasilitas adalah halaman dimana setiap user dapat
melihat fasilitas apa saja yang ada pada mobil secara detail, user tidak perlu
login untuk masuk ke halaman ini. Tampilan halaman detail fasilitas dibuat
dengan menggunakan file detailfasilitas.php. Isi file detailfasilitas.php
adalah sebagai berikut:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li><a href="index.php"><u>H</u>OME</a></li> <li ><a id="current" href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li ><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> <li></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> DETAIL FASILITAS</h2> <? include "inc_detailfasilitas.php"; ?> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php if (empty($_GET['Detail'])) { include "koneksi.inc"; opendb();
78
$sql="SELECT m.*,df.Kode_Fasilitas,f.Nama_Fasilitas FROM mobil m,fasilitas f, detailfasilitas df WHERE m.No_Mobil = df.No_Mobil and df.Kode_Fasilitas = f.Kode_Fasilitas and m.No_Mobil='$_GET[nomobil]'"; querydb($sql); $data_detail=mysql_fetch_assoc($result); ?> <table width="95%" border="1"> <tr> <td width="24%" height="26" valign="top" bgcolor="#CCCCCC"><strong>Nama mobil</strong></td> <td width="24%" valign="top">: <input type="text" name="textfield" readonly="1" value="<? echo $data_detail['Nama_Mobil']; ?>"></td> <td width="13%" rowspan="7"></td> <td width="39%" rowspan="7" valign="top"><div align="center"><strong>FASILITAS</strong> <br> </div> <table width="75%" border="1" align="center"> <tr> <td width="86%" align="center" bgcolor="#CCCCCC"><div align="center"><strong>Nama Fasilitas</strong></div></td> </tr> <? echo "<tr> <td align=center>$data_detail[Nama_Fasilitas]</td> </tr>"; while ($data_f=mysql_fetch_assoc($result)) { echo "<tr> <td align=center>$data_f[Nama_Fasilitas]</td> </tr>"; } ?> </table> </td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>No mobil</strong></td> <td valign="top">: <input type="text" name="textfield2" readonly="1" value="<? echo $data_detail['No_Mobil']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Jenis mobil</strong></td> <td valign="top">: <input type="text" name="textfield22" readonly="1" value="<? echo $data_detail['Jenis_Mobil']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Tahun pembuatan</strong></td> <td valign="top">: <input type="text" name="textfield23" readonly="1" value="<? echo $data_detail['Tahun_Pembuatan']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Harga sewa</strong></td> <td valign="top">: <input type="text" name="textfield24" readonly="1" value="<? echo $data_detail['Harga_Sewa']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Kapasitas penumpang</strong></td> <td valign="top">: <input type="text" name="textfield25" readonly="1" value="<? echo $data_detail['Kapasitas_Penumpang']; ?>"></td>
79
</tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Status mobil</strong></td> <td valign="top">: <input type="text" name="textfield26" readonly="1" value="<? echo $data_detail['Status_Mobil']; ?>"></td> </tr> </table> <table width="89%" border="0" align="center"> <tr> <td align="right"><input type="reset" name="Reset" value="Kembali" onClick="javascript:history.go(-1);"></td> </tr> </table> <? closedb(); } ?>
4.3.1.6 Halaman Harga Sewa
Gambar 4.7 Halaman Harga Sewa
80
Halaman harga sewa adalah halaman dimana setiap user dapat melihat
daftar harga sewa setiap mobil, user tidak perlu login untuk masuk ke
halaman ini. Tampilan halaman harga sewa dibuat dengan menggunakan file
hargasewa.php. Isi file hargasewa.php adalah sebagai berikut:
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li> <? if (empty($_SESSION['rental'])) { echo "<a href='index.php'><u>H</u>OME</a>"; } else { echo "<a href='home.php'><u>H</u>OME</a>"; } ?> </li> <li><a href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li id="active"><a id="current" href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> HARGA SEWA</h2> <? include "inc_hargasewa.php"; ?></td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
81
<table width="90%" border="1" > <tr bgcolor="#CCCCCC"> <td width="24%"><div align="center"><strong>Jenis mobil</strong></div></td> <td width="20%"><div align="center"><strong>1 hari + Non Sopir</strong></div></td> <td width="21%"><div align="center"><strong>1/2 hari + Non Sopir</strong></div></td> <td width="18%"><div align="center"><strong>1 hari + Sopir</strong></div></td> <td width="17%"><div align="center"><strong>1/2 hari + Sopir</strong></div></td> </tr> <?php include "koneksi.inc"; include "hargasopir.inc"; opendb(); $sql="SELECT Nama_Mobil,Harga_Sewa FROM mobil"; querydb($sql); while($data_harga=mysql_fetch_array($result)) { echo "<tr>"; echo "<td>" .$data_harga['Nama_Mobil'] ."</td>"; echo "<td align='center'>" .$data_harga['Harga_Sewa'] ."</td>"; echo "<td align='center'>" .ceil($data_harga['Harga_Sewa']-50000) ."</td>"; echo "<td align='center'>" .ceil($data_harga['Harga_Sewa'] + $harga_sopir) ."</td>"; echo "<td align='center'>" .ceil($data_harga['Harga_Sewa'] - 50000 + $harga_sopir) ."</td>"; echo "</tr>"; } closedb(); ?> </table>
4.3.1.7 Halaman Edit Profil Member
Gambar 4.8 Halaman Edit Profil Member
82
Pada halaman edit profil ini, user dapat merubah profil dirinya. Untuk
bisa masuk halaman ini, user haus melakukan login terlebih dahulu.
Tampilan halaman edit profil ini dibuat dengan menggunakan file
editprofil.php. Script editprofil.php adalah sebagai berikut:
<? include 'authorisasi.inc'; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li><a href="home.php"><u>H</u>OME</a></li> <li id="active"><a id="current" href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="352" colspan="2" align="center" class="Border"> <? include "inc_editprofil.php"; ?> <center> </center></td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php include "koneksi.inc"; $id=$_SESSION['rental']; opendb(); if (isset($_POST['Submit'])) { if (!empty($_POST['password'])) {
83
$sql="UPDATE penyewa SET Nama_Lengkap = '$_POST[nama]',Password = '$_POST[password]',Email = '$_POST[email]',Jenis_Kelamin = '$_POST[jeniskelamin]', Pekerjaan = '$_POST[pekerjaan]', Alamat = '$_POST[alamat]', Kota = '$_POST[kota]', Propinsi = '$_POST[propinsi]' WHERE ID_Penyewa='$id'"; } else { $sql="UPDATE penyewa SET Nama_Lengkap = '$_POST[nama]',Email = '$_POST[email]',Jenis_Kelamin = '$_POST[jeniskelamin]', Pekerjaan = '$_POST[pekerjaan]', Alamat = '$_POST[alamat]', Kota = '$_POST[kota]', Propinsi = '$_POST[propinsi]' WHERE ID_Penyewa='$id'"; } querydb($sql); if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='editprofil.php'> << Kembali </a>"; } else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='editprofil.php'> << Kembali </a>"; } } else { $sql="SELECT * FROM penyewa WHERE ID_Penyewa = '$id'"; querydb($sql); $dt_user=mysql_fetch_assoc($result); ?> <h2 align="center"> EDIT PROFIL</h2> <form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> <table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="23%"><strong>Nama Member</strong></td> <td width="2%">:</td> <td colspan="2"> <input name="nama" type="text" size="30" value="<? echo $dt_user['Nama_Lengkap']; ?>"></td> </tr> <tr> <td><strong>Password</strong></td> <td>: </td> <td colspan="2"> <input name="password" type="password" size="30"></td> </tr> <tr> <td width="23%"><strong>Email</strong></td> <td width="2%">:</td> <td colspan="2"> <input name="email" type="text" size="30" value="<? echo $dt_user['Email']; ?>"></td> </tr> <tr> <td width="23%"><strong>Jenis Kelamin</strong></td> <td width="2%">:</td> <? if ($dt_user['Jenis_Kelamin']=="L" || $dt_user['Jenis_Kelamin']=="P") { ?> <td width="20%"> <input type="radio" name="jeniskelamin" value="P" checked> Pria </td> <td width="55%"><input type="radio" name="jeniskelamin" value="W"> Wanita</td> <? }
84
else { ?> <td width="20%"> <input type="radio" name="jeniskelamin" value="P" checked> Pria </td> <td width="55%"><input type="radio" name="jeniskelamin" value="W" checked> Wanita</td> <? } ?> </tr> <tr> <td width="23%"><strong>Pekerjaan</strong></td> <td width="2%">:</td> <td colspan="2"> <input name="pekerjaan" type="text" size="30" value="<? echo $dt_user['Pekerjaan']; ?>"></td> </tr> <tr> <td width="23%"><strong>Alamat</strong></td> <td width="2%">:</td> <td colspan="2"> <input name="alamat" type="text" size="50" value="<? echo $dt_user['Alamat']; ?>"></td> </tr> <tr> <td width="23%"><strong>Kota</strong></td> <td width="2%">:</td> <td colspan="2"> <input name="kota" type="text" size="30" value="<? echo $dt_user['Kota']; ?>"></td> </tr> <tr> <td width="23%"><strong>Propinsi</strong></td> <td width="2%">:</td> <td colspan="2"> <input name="propinsi" type="text" size="30" value="<? echo $dt_user['Propinsi']; ?>"></td> </tr> <tr> <td colspan="2"></td> <td colspan="2"><input type="submit" name="Submit" value="Setuju"> <input type="reset" name="Reset" value="Keluar" onClick="javascript:history.go(-1);"></td> </tr> </table> </form> <? } closedb(); ?>
85
4.3.1.8 Halaman Sewa Mobil Online
Gambar 4.9 Halaman Sewa Mobil Online
Halaman Sewa Mobil merupakan halaman untuk melakukan
pemesanan mobil secara online. User tinggal memilih mobil yang
diinginkan dengan klik check box yang ada kemudian klik pinjam. Script
untuk halaman sewa mobil online ini adalah:
<? include 'authorisasi.inc'; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head>
86
<body> <table width="800" border="0" align="center"> <tr> </tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li><a href="home.php"><u>H</u>OME</a></li> <li><a href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center">SEWA MOBIL </h2> <? include "inc_sewamobil.php"; ?></td> <table width="98%" border="1" alig1n="center" cellpadding="2"> </table> <p></p><table width="97%" border="0" align="center"> <tr> <td width="88%" align="right"></td> <td width="12%"></td> </tr> </table> <p> </p><tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> <h2 align="center"> </h2> <form action="home.php" method="post"> </form> <p align="center"> </p> <div align="left"> </div> </table> </body> </html>
<?php
include "koneksi.inc";
include "hargasopir.inc";
opendb();
$id=$_SESSION['rental'];
$tgl=date("Y-m-d");
if (isset($_POST['Submit']))
{
$data = $_POST['mobil'];
$hr = $_POST['mobil'];
if(empty($data))
87
{
echo "Masukkan pilihan mobil !";
}
else
{
echo "<div align='left'><p>Mobil yang anda pinjam : </p>";
echo "<form action='$_SERVER[PHP_SELF]' method='post'>";
$i=0;
echo "<pre>";
foreach($data as $jumlah)
{ $num=$i+1;
$sql="SELECT * FROM mobil WHERE No_Mobil = '$jumlah'";
querydb($sql);
$dt=mysql_fetch_array($result);
echo $num ."." .$dt['No_Mobil'] ."<input type='hidden' name='nomobil[$i]'
value='$dt[No_Mobil]'> <input type='text' name='hari[$i]' size='3'
maxlength='2'> , <select name='koma[$i]'><option value='0'>0</option><option
value='5'>5</option></select> Hari <select name='sopir[$i]'><option value='0'>Non
sopir</option><option value='1'>Sopir</option></select> Tanggal pinjam : <input
type='text' name='tgl_pinjam' value=" .date("d-m-Y") ."><br>";
$i++;
}
echo "</pre>";
echo "Jumlah mobil : " .$i;
echo "<input type='hidden' name='jum' value='$i'>";
echo "<br><br><input type='submit' name='Pinjam' value='Pinjam'> <input
type='button' name='batal' value='Batal' onClick='javascript:history.go(-1);'>";
echo "</form>";
echo "N.B : Tambah Sopir @ + Rp. 100.000,00";
echo "</div>";
}
die();
}
else if(isset($_POST['Pinjam']))
{
$in_tgl=$_POST['tgl_pinjam'];
$nomobil=$_POST['nomobil'];
$jum=$_POST['jum'];
$sopir=$_POST['sopir'];
$hari=$_POST['hari'];
$koma=$_POST['koma'];
echo "<div align='left'><p><h3>Total Biaya : </h3></p>";
88
echo "<pre>";
$tot_all=0;
echo "<form action='$_SERVER[PHP_SELF]' method='post'>";
for($i=1;$i<=$jum;$i++)
{
$num=$i-1;
$offset=($hari[$num]*24*60*60);
$sql="select * from mobil where No_Mobil='$nomobil[$num]'";
querydb($sql);
$dt=mysql_fetch_assoc($result);
if ($sopir[$num] == 0)
{
if ($koma[$num]==5)
{
$h_separo=ceil($dt['Harga_Sewa']-50000);
//if ($hari[$num] == 0)
//{
//$total_h=$h_separo;
//}
//else
//{
$total_h=ceil($dt['Harga_Sewa'] * $hari[$num]) +
$h_separo;
//}
}
else
{
$total_h = ceil($dt['Harga_Sewa'] * $hari[$num]);
}
}
else
{
if ($koma[$num]==5)
{
$h_separo=ceil($dt['Harga_Sewa']-50000);
//if ($hari[$num] == 0)
//{
// $total_h=$h_separo + $harga_sopir;
//}
//else
//{
$total_h=ceil($dt['Harga_Sewa']*$hari[$num])+
$harga_sopir + $h_separo;
//}
89
}
else
{
$total_h = ceil($dt['Harga_Sewa'] * $hari[$num]) + $harga_sopir;
}
}
echo $i .".<b>Nomor mobil :</b> <input type='hidden' value='$nomobil[$num]'
name='nomobil[]'>" .$nomobil[$num] ."<br>";
echo " - Total Biaya : Rp.<input type='text' value='" .$total_h ." '
name='totalbiaya[]' readonly='1'>,00 <br>";
echo " - Tanggal pinjam : <input type='text' value='$in_tgl' name='tgl_pinjam'
readonly='1'><br>";
echo " - Tanggal kembali : <input type='text' value='" .date("d-m-
Y",strtotime($in_tgl)+$offset) ."' name='tgl_kembali' readonly='1'><br>";
$tot_all= $tot_all + $total_h;
}
echo "</pre>";
echo "<br>";
echo "Total biaya keseluruhan = Rp.<input type='text' value='" .$tot_all ."'
name='total_semua' readonly='1'>,00";
echo "<br><br><input name='Ok' type='submit' value=' Ok '><input name='Batal'
type='submit' value='Batal' style:'javascript:history.go(-1);'>";
echo "</form>";
echo "</div>";
die();
}
else if (isset($_POST['Ok']))
{
$nomobil=$_POST['nomobil'];
$totalbiaya=$_POST['totalbiaya'];
$tgl_kembali=date("Y-m-d",strtotime($_POST['tgl_kembali']));
$tgl_pinjam=date("Y-m-d",strtotime($_POST['tgl_pinjam']));
$i=0;
foreach($nomobil as $no)
{
$sql="INSERT INTO sewa values(' ','$id','$tgl_pinjam',' ',' ')";
querydb($sql);
$sql="UPDATE mobil SET Status_Mobil = 'KELUAR' WHERE No_Mobil='$no'";
querydb($sql);
$sql="SELECT No_Nota from sewa order by No_Nota DESC";
90
querydb($sql);
$nonota=mysql_fetch_assoc($result);
$sql="INSERT INTO detailsewa values('$nonota[No_Nota]','
','$no','$totalbiaya[$i]','$tgl_kembali',' ') ";
querydb($sql);
$sql="SELECT Nama_Lengkap from penyewa Where ID_Penyewa=$id";
querydb($sql);
$dt_nama=mysql_fetch_assoc($result);
$i++;
}
if (!$result)
{
echo "Gagal !";
}
else
{
echo "<div id='warning'>Pemesanan Berhasil !</div>";
echo "<br><br>";
echo "<div id='box'>";
echo "No Nota anda : " .$nonota['No_Nota'];
echo "<br>Atas nama : " .$dt_nama['Nama_Lengkap'];
echo "</div>";
echo "<br><br>Silahkan datang ke kantor untuk menyelesaikan administrasi !";
if ($tgl_pinjam != date("d-m-Y"))
{
echo "<p align='left'><b>NB : <span id='warning'>
Dalam waktu 2 hari sebelum tanggal " .date("d-m-
Y",strtotime($tgl_pinjam)) ." harap konfirmasi ke kantor
Jika tidak maka pemesanan sewa mobil anda akan
dibatalkan !
</span></b></p>";
}
echo "<br><br>";
echo "<a href='home.php'>[ Kembali ]</a>";
}
die();
}
$sql="SELECT No_Mobil,Nama_Mobil,Harga_Sewa FROM mobil Where Status_Mobil='ada'
order by Nama_Mobil asc";
querydb($sql);
$jum_data=mysql_num_rows($result);
?>
<form action="<? $_SERVER['PHP_SELF'] ?>" method="post">
91
<table width="98%" border="1">
<tr bgcolor="#CCCCCC">
<td width="13%" height="61" align="center" td size=10><strong>No.
Mobil</strong></td>
<td width="20%" align="center" td size=10><strong>Stock Mobil</strong></td>
<td width="12%" align="center" td><strong> 1 Hari Sopir </strong></td>
<td width="19%" align="center" td><strong> 1/2 Hari Non Sopir</strong></td>
<td width="15%" align="center" td><strong> 1 Hari + Sopir</strong></td>
<td width="16%" align="center" td><strong> 1/2 Hari + Sopir</strong></td>
<td width="5%" align="center" td><strong> Sewa</strong></td>
</tr>
<?
$i=0;
while($data_harga=mysql_fetch_array($result))
{
$h_non_sopir=$data_harga['Harga_Sewa'];
$s_non_sopir=ceil($data_harga['Harga_Sewa']-50000);
$h_sopir=ceil($data_harga['Harga_Sewa'] + $harga_sopir);
$s_sopir=ceil($data_harga['Harga_Sewa'] - 50000 + $harga_sopir);
echo "<tr>";
echo "<td>" .$data_harga['No_Mobil'] ."</td>";
echo "<td>" .$data_harga['Nama_Mobil'] ."</td>";
echo "<td align='center'>" .$h_non_sopir ."</td>";
echo "<td align='center'>" .$s_non_sopir ."</td>";
echo "<td align='center'>" .$h_sopir ."</td>";
echo "<td align='center'>" .$s_sopir ."</td>";
echo "<td align='center'><input type='checkbox' name='mobil[$i]'
value='$data_harga[No_Mobil]'>";
echo "</tr>";
$i++;
}
?>
<tr align="right" bgcolor="#CCCCCC">
<td colspan="7" td size=10>
<input type="submit" name="Submit" value="Pinjam">
<input type="reset" name="Reset" value="Kembali" onClick="javascript:history.go(-
1);">
</td>
</tr>
</table>
</form>
<?
closedb();
92
?>
4.3.1.9 Halaman Sewa Mobil Online ( Lanjutan )
Gambar 4.10 Halaman Sewa Mobil Online ( Lanjutan )
Halaman ini muncul setelah user selesai melakukan pemesanan mobil.
Di halaman ini user diminta untuk memasukkan berapa hari dia akan
menyewa mobil, dengan sopir atau non sopir, dan menentukan tanggal sewa
mobil. Setelah itu user tinggal klik tombol pinjam untuk melanjutkan
pemesanan atau tekan tombol batal untuk membatalkan pemesanan.
93
4.3.1.10 Halaman Sewa Mobil Online ( Lanjutan 1 )
Gambar 4.11 Halaman Sewa Mobil Online ( Lanjutan 1 )
Halaman ini muncul setelah user selesai melakukan pemesanan mobil
pada halaman sewa mobil online ( lanjutan ). Di halaman ini user dapat
mengetahui total biaya sewa mobil, tanggal sewa mobil, dan tanggal mobil
dikembalikan. Setelah itu user hanya tinggal klik tombol ok untuk
melanjutkan proses, atau klik tombol batal untuk membatalkan pemesanan
mobil.
94
4.3.1.11 Halaman Sewa Mobil Online ( Lanjutan 2 )
Gambar 4.12 Halaman Sewa Mobil Online ( Lanjutan 2 )
Halaman ini muncul setelah user selesai melakukan pemesanan mobil
pada halaman sewa mobil online ( lanjutan 1 ). Di halaman ini user akan
mendapatkan nomor nota yang nantinya digunakan untuk pengecekan sewa
mobil oleh bagian operasional pada saat user datang ke kantor untuk
menyelesaikan administrasi.
95
4.3.2 Pembuatan User Interface Subsistem Admin
4.3.2.1 Halaman Login Admin
Gambar 4.13 Halaman Login Admin
Sebelum masuk ke halaman home admin, admin diharuskan untuk
mengisi username dan password. Jika username dan password dikenali oleh
sistem, admin dapat masuk ke halaman home admin. Script yang digunakan
untuk halaman login admin ini adalah:
<? session_start();?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>:: 02531457 ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style/02531457.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="800" border="0" align="center">
<tr>
96
<td height="115" colspan="2" background="image/hafa.jpg"> </td>
</tr>
<tr>
<td width="563" height="29"> <div id="navcontainer"></div></td>
</tr>
<tr>
<td height="352" colspan="2" align="center" class="Border">
<? include "inc_index.php"; ?></td>
</tr>
<tr>
<td height="23" colspan="2" align="center" valign="middle"
class="Border"> </td>
</tr>
<tr>
<td height="34" colspan="2" align="center" valign="middle" class="Border"><font
size="-1">Copyright@2007<br>
By : Andre</font></td>
</tr>
</table>
</body>
</html>
<?php
include "koneksi.inc";
opendb();
if(isset($_POST['Submit']))
{
$in_uname=$_POST['nama'];
$in_pass=$_POST['nama2'];
$sql="SELECT * FROM admin WHERE Username = '$in_uname' and Password =
'$in_pass'";
querydb($sql);
$dt=mysql_fetch_assoc($result);
$data_login=mysql_num_rows($result);
if ($data_login==1)
{
$_SESSION['rental']=$dt['Id_Admin'];
echo "<a href='home.php'>Kembali ke Menu Utama </a> -> ";
}
else
{
echo "<div id='warning'>Username atau password anda salah !</div>";
echo "<a href='index.php'>Silahkan ulangi</a>";
97
}
}
else
{
?>
<h2 align="center"> LOGIN</h2>
<form action="<? $_SERVER['PHP_SELF']; ?>" method="post">
<table width="45%" border="0" align="center" cellpadding="2">
<tr>
<td width="32%"><strong>Nama Admin</strong></td>
<td width="4%">:</td>
<td width="64%"> <input name="nama" type="text" size="30"></td>
</tr>
<tr>
<td><strong>Password</strong></td>
<td>: </td>
<td><input name="nama2" type="password" size="30"> </td>
</tr>
<tr>
<td colspan="2"></td>
<td><input type="submit" name="Submit" value="Login">
<input type="reset" name="Reset" value="Keluar"></td>
</tr>
</table>
</form>
<?
}
closedb();
?>
98
4.3.2.2 Halaman Home Admin
Gambar 4.14 Halaman Home Admin
Halaman ini adalah halaman yang hanya dapat dimasuki hanya oleh
admin. Pada halaman ini admin dapat melakukan edit profil admin, lihat
stok mobil, tambah mobil, ubah mobil, hapus mobil, tambah driver, ubah
driver, hapus diver dan logout. Jika admin memilih untuk keluar dari seluruh
halaman admin, maka admin harus melakukan login dahulu untuk masuk
kehalaman admin kembali. Hal itu terjadi karena adanya script dibawah ini
yang berfungsi untuk menjaga keamanan data-data khusus yang seharusnya
hanya diakses oleh admin:
<? include 'authorisasi.inc'; ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>:: 02531457 ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style/02531457.css" rel="stylesheet" type="text/css">
</head>
99
<body>
<table width="800" border="0" align="center">
<tr>
<td height="115" colspan="2" background="image/hafa.jpg"> </td>
</tr>
<tr>
<td width="800" height="29" colspan="2"> <div id="navcontainer"></div></td>
</tr>
<tr>
<td width="253" valign="top" class="Border"><p><h3>Menu Utama
Admin:</h3></p>
<p>
<ul>
<li><a href="editadmin.php">Edit Profil Admin</a></li>
<li><a href="stockmobil2.php">Lihat Stock Mobil</a></li>
<li><a href="karyawan.php">Lihat Karyawan</a></li>
<li>Update Stock Mobil</li>
<br>
- <a href="updatestokmobil.php">Tambah Mobil</a> <br>
- <a href="ubahmobil.php">Ubah Mobil</a> <br>
- <a href="hapusmobil.php">Hapus Mobil</a>
<li>Update Data Driver</li>
<br>
- <a href="tambahdriver.php">Tambah Driver</a> <br>
- <a href="ubahdriver.php">Ubah Driver</a> <br>
- <a href="hapusdriver.php">Hapus Driver</a>
<li><a href="logout.php">LOGOUT</a></li>
</ul>
<p></p></td>
<td width="537" height="205" align="center" class="Border"><h2> </h2>
<table width="75%" border="0" align="center" cellpadding="2">
<tr>
<td> <h1 align="center"> ADMIN</h1>
</td>
</tr>
</table>
<br>
<br>
<br> </td>
</tr>
<tr>
100
<td height="23" colspan="2" align="center" valign="middle"
class="Border"> </td>
</tr>
<tr>
<td height="34" colspan="2" align="center" valign="middle" class="Border"><font
size="-1">Copyright@2007<br>
By : Andre</font></td>
</tr>
</table>
</body>
</html>
4.3.2.3 Halaman Edit Profil Admin
Gambar 4.15 Halaman Edit Profil Admin
Halaman ini digunakan mengedit profil admin jika terjadi perubahan-
perubahan pada data admin. Berikut ini adalah script dari halaman edit profil
admin :
<? include 'authorisasi.inc' ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
101
<head>
<title>:: 02531457 ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style/02531457.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="800" border="0" align="center">
<tr>
<td height="115" colspan="2" background="image/hafa.jpg"> </td>
</tr>
<tr>
<td width="563" height="29"> <div id="navcontainer"></div></td>
</tr>
<tr>
<td height="352" colspan="2" align="center" class="Border">
<? include "inc_editadmin2.php"; ?>
</tr>
<tr>
<td height="23" colspan="2" align="center" valign="middle"
class="Border"> </td>
</tr>
<tr>
<td height="34" colspan="2" align="center" valign="middle" class="Border"><font
size="-1">Copyright@2007<br>
By : Andre</font></td>
</tr>
</table>
</body>
</html>
<?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if (isset($_POST['Submit'])) { if (!empty($_POST['password'])) { $sql="UPDATE admin SET Username = '$_POST[nama]',Password = '$_POST[password]', Alamat = '$_POST[alamat]', No_Telp = '$_POST[telp]' WHERE Id_Admin='$Id'"; } else { $sql="UPDATE admin SET Username = '$_POST[nama]', Alamat = '$_POST[alamat]', No_Telp = '$_POST[telp]' WHERE Id_Admin='$Id'"; }
102
querydb($sql); if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='editadmin.php'> << Kembali </a>"; } else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='home.php'> << Kembali </a>"; } } else { $sql="SELECT * FROM admin WHERE Id_Admin = '$Id'"; querydb($sql); $dt_user=mysql_fetch_assoc($result); ?> <h2 align="center"> EDIT ADMIN</h2> <form action="<? $_SERVER['PHP_SELF']?>" method="post"> <table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="23%"><strong>Nama Admin</strong></td> <td width="2%">:</td> <td width="75%"> <input name="nama" type="text" size="30" value="<? echo $dt_user['Username']; ?>"></td> </tr> <tr> <td><strong>Password</strong></td> <td>: </td> <td> <input name="password" type="password" size="30"></td> </tr> <tr> <td width="23%"><strong>Alamat</strong></td> <td width="2%">:</td> <td> <input name="alamat" type="text" size="50" value="<? echo $dt_user['Alamat']; ?>"></td> </tr> <tr> <td width="23%"><strong>No. Telp</strong></td> <td width="2%">:</td> <td> <input name="telp" type="text" size="30" value="<? echo $dt_user['No_Telp']; ?>"></td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="Submit" value="Setuju"> <input type="reset" name="Reset" value="Keluar" onClick="javascript:history.go(-1);"></td> </tr> </table> </form> <? } closedb(); ?>
103
4.3.2.4 Halaman Lihat Stok Mobil
Gambar 4.16 Halaman Lihat Stok Mobil
Halaman ini digunakan oleh admin untuk melihat stok mobil yang masih
ada di rental. Berikut ini adalah script dari halaman lihat stok mobil:
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; }
104
//--> </script> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li> <? if (empty($_SESSION['rental'])) { echo "<a href='index.php'><u>H</u>OME</a>"; } else { echo "<a href='home.php'><u>H</u>OME</a>"; } ?> </li> <li ><a id="current" href="stockmobil2.php"><u>S</u>TOCK MOBIL</a></li> <li ><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> STOCK MOBIL</h2> <? include "inc_stokmobil2.php"; ?> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<form action="<? echo "detailfasilitas.php?nomobil=$_GET[nomobil]"; ?>" method="post""> <table width="100%" border="1"> <tr bgcolor="#999999"> <th width="34%">Nama mobil</th> <th width="25%">Jenis mobil</th> <th width="41%">Plat nomor</th> </tr> <?php include "koneksi.inc"; opendb(); $sql="SELECT * FROM mobil GROUP BY Nama_Mobil"; querydb($sql);
105
while ($data_mobil=mysql_fetch_assoc($result)) { echo "<tr>"; echo " <td>$data_mobil[Nama_Mobil]</td>"; echo " <td align=center>$data_mobil[Jenis_Mobil]</td>"; $sql2="SELECT No_Mobil FROM mobil where Nama_Mobil='$data_mobil[Nama_Mobil]'"; $result2=mysql_query($sql2); echo " <td align=center><select name='nomobil' style='width:200px;' onChange=MM_jumpMenu('parent',this,0)>"; echo "<option value=''>- Lihat detail</option>"; while ($data_no=mysql_fetch_assoc($result2)) { echo "<option value='detailfasilitas.php?nomobil=$data_no[No_Mobil]'>$data_no[No_Mobil]</option>"; } echo "</select></td>"; echo "</tr>"; } closedb(); ?> </table> </form>
4.3.2.5 Halaman Tambah Stok Mobil, Harga Sewa dan Fasilitas
Gambar 4.17 Halaman Tambah Stok Mobil, Harga Sewa dan Fasilitas
Halaman ini digunakan untuk menambah stok mobil, harga sewa, serta
detil fasilitas mobil. Berikut ini adalah script dari halaman kelola teknologi
tepat guna :
<? include 'authorisasi.inc' ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
106
<html>
<head>
<title>:: 02531457 ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style/02531457.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="800" border="0" align="center">
<tr>
<td height="115" colspan="2" background="image/hafa.jpg"> </td>
</tr>
<tr>
<td width="563" height="29">
<div id="navcontainer"></div></td>
</tr>
<tr>
<td height="252" colspan="2" align="center" class="Border"><h3> TAMBAH MOBIL
DAN FASILITAS</h3>
<? include "inc_updatestokmobil.php" ?>
</tr>
<tr>
<td height="23" colspan="2" align="center" valign="middle"
class="Border"> </td>
</tr>
<tr>
<td height="34" colspan="2" align="center" valign="middle" class="Border"><font
size="-1">Copyright@2007<br>
By : Andre</font></td>
</tr>
</table>
</body>
</html>
<?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if (isset($_POST['tambah'])) { $sql="INSERT into mobil values ('$_POST[nomobil]','$_POST[namamobil]','$_POST[jenismobil]','$_POST[tahun]','$_POST[hargasewa]','$_POST[penumpang]','$_POST[select3]')"; querydb($sql); $kd_fas = $_POST['cek']; foreach($kd_fas as $tambah)
107
{ $sql2="INSERT into detailfasilitas values ('$_POST[nomobil]','$tambah')"; //$sql="UPDATE mobil SET Nama_Mobil = '$_POST[namamobil]', Jenis_Mobil = '$_POST[jenismobil]', Tahun_Pembuatan = '$_POST[tahun]', Kapasitas_Penumpang = '$_POST[kapasitas]', Status_Mobil = '$_POST[status]' WHERE No_Mobil='$Id'"; querydb($sql2); } if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='home.php'> << Kembali </a>"; } else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='home.php'> << Kembali </a>"; } } else { //$sql="SELECT * FROM mobil WHERE No_Mobil = '$Id'"; //querydb($sql); //$dt_user=mysql_fetch_assoc($result); ?> <table width="800" border="0" align="center"> <tr> <td height="252" align="center" class="Border"> <form action="updatestokmobil.php" method="post"> <table width="49%" border="0" align="left" cellpadding="2"> <tr> <td width="41%"><strong>Nama Mobil</strong></td> <td width="3%"><strong>:</strong></td> <td width="56%"><input name="namamobil" type="text" size="30" value="<? echo $dt_user['Nama_Mobil']; ?>"></td> </tr> <tr> <td height="30"><strong>No. Mobil</strong></td> <td><strong>:</strong> </td> <td><input name="nomobil" type="text" size="30" value="<? echo $dt_user['No_Mobil']; ?>"></td> </tr> <tr> <td><strong>Jenis Mobil</strong></td> <td><strong>:</strong> </td> <td> <input name="jenismobil" type="text" size="30" value="<? echo $dt_user['Jenis_Mobil']; ?>"></td> </tr> <tr> <td><strong>Tahun Produksi</strong></td> <td><strong>: </strong></td> <td> <input name="tahun" type="text" size="30" value="<? echo $dt_user['Tahun_Pembuatan']; ?>"> </td> </tr> <tr> <td><strong>Harga Sewa</strong></td> <td><strong>:</strong> </td> <td> <input name="hargasewa" type="text" size="30" value="<? echo $dt_user['Harga_Mobil']; ?>"> </td> </tr> <tr> <td><strong>Kapasitas Penumpang </strong></td> <td><strong>:</strong> </td>
108
<td> <input name="penumpang" type="text" size="30" value="<? echo $dt_user['Kapasitas_Penumpang']; ?>"></td> </tr> <tr> <td height="26"><strong>Status Mobil</strong></td> <td><strong>:</strong> </td> <td> <select name="select3"> <option>ADA</option> <option>KELUAR</option> </select></td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="tambah" value="Setuju"> <input type="reset" name="Reset" value="Batal" onClick="javascript:history.go(-1);"></td> </tr> </table><table width="50%" height="261" border="0" align="center" cellpadding="2"> <tr> <td height="252" colspan="2" align="center" valign="top" class="Border"><h3> FASILITAS MOBIL</h3> <table width="93%" border="1" align="center" cellpadding="2" cellspacing="0"> <tr bgcolor="#CCCCCC"> <td width="72%" align= "center" > <B> NAMA FASILITAS </B></td> <td width="28%" align="center"> <B> ADA </B></td> </tr> <? $sql="Select * from fasilitas"; querydb($sql); while ($dt_fasilitas=mysql_fetch_assoc($result)) { echo "<tr>"; echo "<td align=center>$dt_fasilitas[Nama_Fasilitas]</td>"; echo "<td align=center><input type='checkbox' name='cek[]' value='$dt_fasilitas[Kode_Fasilitas]'></td>"; echo "</tr>"; } ?> </table></form></tr> </table> </body> </html> <? } ?>
4.3.2.6 Halaman Ubah Mobil
109
Gambar 4.18 Halaman Ubah Mobil
Halaman ini menampilkan stok mobil yang ada di rental. Pada halaman
ini Admin dapat melakukan perubahan pada data mobil, seperti nama mobil,
nomor mobil, jenis mobil, taun pembuatan, harga sewa, status mobil, serta
detail fasilitas mobil. Berikut ini adalah script dari halaman ubah mobil :
<? session_start(); ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>:: 02531457 ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style/02531457.css" rel="stylesheet" type="text/css">
110
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
//-->
</script>
</head>
<body>
<table width="800" border="0" align="center">
<tr>
<td height="115" colspan="2" background="image/hafa.jpg"> </td>
</tr>
<tr>
<td width="563" height="29"><div id="navcontainer"></div></td>
</tr>
<tr>
<td height="432" colspan="2" align="center" valign="top" class="Border"><h2
align="center">
UBAH MOBIL</h2>
<? include "inc_ubahmobil.php"; ?>
<p align="center">
<input type="reset" name="Reset" value="Kembali"
onClick="javascript:history.go(-1);">
</p></td>
</tr>
<tr>
<td height="23" colspan="2" align="center" valign="middle"
class="Border"> </td>
</tr>
<tr>
<td height="34" colspan="2" align="center" valign="middle"
class="Border"><font size="-1">Copyright@2007<br>
By : Andre</font></td>
</tr>
</table>
</body>
</html>
<form action="<? echo "ubahfasilitas.php?nomobil=$_GET[nomobil]"; ?>" method="post"">
111
<table width="100%" border="1"> <tr bgcolor="#999999"> <th width="34%">Nama mobil</th> <th width="25%">Jenis mobil</th> <th width="41%">Plat nomor</th> </tr> <?php include "koneksi.inc"; opendb(); $sql="SELECT * FROM mobil GROUP BY Nama_Mobil"; querydb($sql); while ($data_mobil=mysql_fetch_assoc($result)) { echo "<tr>"; echo " <td>$data_mobil[Nama_Mobil]</td>"; echo " <td align=center>$data_mobil[Jenis_Mobil]</td>"; $sql2="SELECT No_Mobil FROM mobil where Nama_Mobil='$data_mobil[Nama_Mobil]'"; $result2=mysql_query($sql2); echo " <td align=center><select name='nomobil' style='width:200px;' onChange=MM_jumpMenu('parent',this,0)>"; echo "<option value=''>- Pilih plat nomor</option>"; while ($data_no=mysql_fetch_assoc($result2)) { echo "<option value='ubahfasilitas.php?nomobil=$data_no[No_Mobil]'>$data_no[No_Mobil]</option>"; } echo "</select></td>"; echo "</tr>"; } closedb(); ?> </table> </form>
<?php include "koneksi.inc"; opendb(); if (isset($_POST['simpan'])) { $id=$_POST['id']; $sql= "UPDATE mobil SET No_Mobil='$_POST[nomobil]',Nama_Mobil='$_POST[namamobil]',Jenis_Mobil='$_POST[jenismobil]', Tahun_Pembuatan='$_POST[thn]',Harga_Sewa='$_POST[hargasewa]',Kapasitas_Penumpang='$_POST[kapasitas]',Status_Mobil='$_POST[status]' WHERE No_Mobil='$id'"; querydb($sql); $kd_fas=$_POST['cek']; $sql3="DELETE FROM detailfasilitas WHERE No_Mobil='$id'"; querydb($sql3); foreach ($kd_fas as $kode) { $sql4="INSERT INTO detailfasilitas VALUES ('$id','$kode')"; querydb($sql4); } if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='ubahmobil.php'> << Kembali </a>"; }
112
else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='home.php'> << Kembali </a>"; } } else { $id=$_GET['nomobil']; $sql="SELECT * FROM mobil WHERE No_Mobil = '$id'"; querydb($sql); $data_detail=mysql_fetch_assoc($result); ?> <form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> <input type='hidden' name="id" value="<? echo $data_detail['No_Mobil'];?>"> <table width="95%" border="1"> <tr> <td width="24%" height="26" valign="top" bgcolor="#CCCCCC"><strong>Nama mobil</strong></td> <td width="24%" valign="top">: <input name="namamobil" type="text" id="namamobil" value="<? echo $data_detail['Nama_Mobil']; ?>"></td> <td width="13%" rowspan="7"></td> <td width="39%" rowspan="7" valign="top"><div align="center"><strong>FASILITAS</strong> <br> </div> <table width="86%" border="1" align="center"> <tr> <td width="76%" align="center" bgcolor="#CCCCCC"><div align="center"><strong>Nama Fasilitas</strong></div></td> <td width="24%" align="center" bgcolor="#CCCCCC"><strong>Ada</strong></td> </tr> <? $sql="Select * FROM fasilitas"; querydb($sql); //$result2=mysql_query($sql2); while($data_fas=mysql_fetch_assoc($result)) { echo "<tr>"; echo "<td>$data_fas[Nama_Fasilitas]</td>"; echo "<td>"; $sql2="Select * FROM detailfasilitas where No_Mobil ='$id' and Kode_Fasilitas = '$data_fas[Kode_Fasilitas]'"; $result2=mysql_query($sql2); $jum_data=mysql_num_rows($result2); if ($jum_data==1) { echo "<input type='checkbox' name='cek[]' value='$data_fas[Kode_Fasilitas]' checked>"; } else { echo "<input type='checkbox' name='cek[]' value='$data_fas[Kode_Fasilitas]'>"; } echo "</td>"; } ?> </table></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>No mobil</strong></td>
113
<td valign="top">: <input name="nomobil" type="text" id="nomobil" value="<? echo $data_detail['No_Mobil']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Jenis mobil</strong></td> <td valign="top">: <input name="jenismobil" type="text" id="jenismobil" value="<? echo $data_detail['Jenis_Mobil']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Tahun pembuatan</strong></td> <td valign="top">: <input name="thn" type="text" id="thn" value="<? echo $data_detail['Tahun_Pembuatan']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Harga sewa</strong></td> <td valign="top">: <input name="hargasewa" type="text" id="hargasewa" value="<? echo $data_detail['Harga_Sewa']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Kapasitas penumpang</strong></td> <td valign="top">: <input name="kapasitas" type="text" id="kapasitas" value="<? echo $data_detail['Kapasitas_Penumpang']; ?>"></td> </tr> <tr> <td valign="top" bgcolor="#CCCCCC"><strong>Status mobil</strong></td> <td valign="top">: <select name="status"> <option value="<? echo $data_detail['Status_Mobil']; ?>"><? echo $data_detail['Status_Mobil']; ?></option> <option value="ADA">ADA</option> <option value="KELUAR">KELUAR</option> </select> </td> </tr> </table> <br> <table width="95%" border="0" cellspacing="0" cellpadding="0"> <tr> <td align="right"><a href="ubahmobil.php"> <input name="simpan" type="submit" id="simpan" value="Simpan"> <input type="reset" name="Reset" value="Batal" onClick="javascript:history.go(-1);"> </a></td> </tr> </table> </form> <? closedb(); } ?>
4.3.2.7 Halaman Hapus Mobil
114
Gambar 4.19 Halaman Hapus Mobil
Halaman ini digunakan untuk menghapus data-data mobil. Pada halaman
ini admin dapat melakukan proses hapus data mobil. Berikut ini adalah
script dari halaman hapus mobil:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr>
115
<td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> HAPUS MOBIL</h2> <? include "inc_hapusmobil.php"; ?> <p align="center"> <input type="reset" name="Reset" value="Keluar" onClick="javascript:history.go(-1);"> </p></td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<? include "koneksi.inc"; opendb(); if ($_GET['aksi']=="hapus") { $sql = "DELETE FROM mobil WHERE No_Mobil = '$_GET[id]'"; $sql2 = "DELETE FROM detailfasilitas WHERE No_Mobil = '$_GET[id]'"; querydb($sql); querydb($sql2); if(!$result) { echo "Hapus gagal !"; } else { echo "Data telah terhapus !"; } } ?> <table width="100%" border="2" cellpadding="0" cellspacing="0" bordercolor="#330033" bgcolor="#FFFFCC"> <tr bgcolor="#999999"> <th width="18%">Nama mobil</th> <th width="14%">Jenis mobil</th> <th width="18%">Plat nomor</th> <th width="10%">Tahun pembuatan</th> <th width="14%">Kapasitas penumpang</th> <th width="12%">Biaya sewa</th> <th width="7%">Status</th> <th width="7%">Hapus</th> </tr> <?php $sql="SELECT * FROM mobil"; querydb($sql); while ($data_mobil=mysql_fetch_assoc($result)) { echo "<tr>"; echo " <td>$data_mobil[Nama_Mobil]</td>"; echo " <td>$data_mobil[Jenis_Mobil]</td>";
116
echo " <td>$data_mobil[No_Mobil]</td>"; echo " <td>$data_mobil[Tahun_Pembuatan]</td>"; echo " <td>$data_mobil[Kapasitas_Penumpang]</td>"; echo " <td>$data_mobil[Harga_Sewa]</td>"; echo " <td>$data_mobil[Status_Mobil]</td>"; echo " <td><a href='hapusmobil.php?aksi=hapus&id=$data_mobil[No_Mobil]'>Hapus</a></td>"; echo "</tr>"; } closedb(); ?> </table>
4.3.2.8 Halaman Tambah Driver
Gambar 4.20 Halaman Tambah Driver
Halaman ini digunakan untuk menambah data-data driver. Pada halaman
ini admin dapat melakukan proses tambah data mobil. Berikut ini adalah
script dari halaman hapus mobil:
<? include 'authorisasi.inc' ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head>
117
<body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="252" colspan="2" align="center" class="Border"> <? include "inc_tambahdriver.php" ?> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if (isset($_POST['tambah'])) { $sql="INSERT into driver values ('$_POST[iddriver]','$_POST[nama]','$_POST[alamat]','$_POST[telp]')";
querydb($sql); if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='tambahdriver.php'> << Kembali </a>"; } else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='home.php'> << Kembali </a>"; } } else { ?> <h2 align="center"> TAMBAH DRIVER</h2> <table width="800" border="0" align="center"> <tr> <td height="252" align="center" class="Border"> <form action="tambahdriver.php" method="post">
<table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="28%"><strong>ID Driver</strong></td> <td width="3%"><strong>:</strong></td> <td width="69%"><input name="iddriver" type="text" size="5" value="<? echo $dt_user['ID_Driver']; ?>"></td>
</tr>
118
<tr> <td height="30"><strong>Nama Driver</strong></td> <td><strong>:</strong> </td> <td><input name="nama" type="text" size="30" value="<? echo $dt_user['Nama']; ?>"></td>
</tr> <tr> <td><strong>Alamat</strong></td> <td><strong>:</strong> </td> <td> <input name="alamat" type="text" size="50" value="<? echo $dt_user['Alamat']; ?>"></td>
</tr> <tr> <td><strong>No Telpon</strong></td> <td><strong>: </strong></td> <td> <input name="telp" type="text" size="20" value="<? echo $dt_user['No_Telp']; ?>">
</td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="tambah" value="Setuju"> <input type="reset" name="Reset" value="Batal" onClick="javascript:history.go(-1);"></td>
</tr> </table> <? } closedb(); ?> </body> </html>
4.3.2.9 Halaman Ubah Driver
Gambar 4.21 Halaman Ubah Driver
119
Halaman ini menampilkan data-data driver yang ada di rental. Pada
halaman ini Admin dapat melakukan perubahan pada data driver, seperti id
driver , nama driver, alamat driver, serta no telpon driver. Berikut ini adalah
script dari halaman ubah driver :
<? include 'authorisasi.inc' ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="352" colspan="2" align="center" class="Border"> <? include "inc_ubahdriver.php"; ?> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if (isset($_POST['Submit'])) { $sql="UPDATE driver SET Nama = '$_POST[nama]', Alamat =
'$_POST[alamat]', No_Telp = '$_POST[telp]' WHERE ID_Driver='$Id'"; querydb($sql); if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='editdriver.php'> << Kembali </a>"; } else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='home.php'> << Kembali </a>"; }
120
} else { $sql="SELECT * FROM driver WHERE ID_Driver = '$Id'"; querydb($sql); $dt_user=mysql_fetch_assoc($result); ?> <h2 align="center"> EDIT DRIVER</h2> <form action="<? $_SERVER['PHP_SELF']?>" method="post"> <table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="25%"><strong>ID Driver</strong></td> <td width="4%">:</td> <td width="71%"> <input name="iddriver" type="text" size="5" value="<? echo
$dt_user['ID_Driver']; ?>"></td> </tr> <tr> <td width="25%"><strong>Nama</strong></td> <td width="4%">:</td> <td width="71%"> <input name="nama" type="text" size="30" value="<? echo
$dt_user['Nama']; ?>"></td> </tr> <tr> <td width="25%"><strong>Alamat</strong></td> <td width="4%">:</td> <td> <input name="alamat" type="text" size="50" value="<? echo
$dt_user['Alamat']; ?>"></td> </tr> <tr> <td width="25%"><strong>No Telpon</strong></td> <td width="4%">:</td> <td> <input name="telp" type="text" size="30" value="<? echo
$dt_user['No_Telp']; ?>"></td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="Submit" value="Setuju"> <input type="reset" name="Reset" value="Keluar"
onClick="javascript:history.go(-1);"></td> </tr> </table> </form> <? } closedb(); ?>
4.3.2.10 Halaman Hapus Driver
121
Gambar 4.22 Halaman Hapus Driver
Halaman ini digunakan untuk menghapus data-data driver. Pada
halaman ini admin dapat melakukan proses hapus data driver, seperti
menghapus, id driver, nama driver, alamat driver, no telpon driver. Berikut
ini adalah script dari halaman hapus driver:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="250" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> </h2>
122
<? include "inc_hapusdriver.php"; ?> <p align="center"> <<- <a href="home.php">Kembali</a> </p></td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<? include "koneksi.inc"; opendb(); if ($_GET['aksi']=="hapus") { $sql = "DELETE FROM driver WHERE ID_Driver = '$_GET[id]'"; querydb($sql); if(!$result) { echo "Hapus gagal !"; } else { echo "Data telah terhapus !"; } } ?> <h2 align="center"> HAPUS DRIVER</h2> <table width="75%" border="2" align="center" cellpadding="0" cellspacing="0" bordercolor="#330033" bgcolor="#FFFFCC"> <tr bgcolor="#999999"> <th width="15%">ID Driver</th> <th width="25%">Nama Driver</th> <th width="42%">Alamat</th> <th width="18%">No Telpon</th> <th width="7%">Hapus</th> </tr> <?php $sql="SELECT * FROM driver"; querydb($sql); while ($data_driver=mysql_fetch_assoc($result)) { echo "<tr>"; echo " <td>$data_driver[ID_Driver]</td>"; echo " <td>$data_driver[Nama]</td>"; echo " <td>$data_driver[Alamat]</td>"; echo " <td>$data_driver[No_Telp]</td>"; echo " <td><a href='hapusdriver.php?aksi=hapus&id=$data_driver[ID_Driver]'>Hapus</a></td>"; echo "</tr>"; } closedb();
123
?> </table>
4.3.3 Pembuatan User Interface Subsistem Operator
4.3.3.1 Halaman Login Operator
Gambar 4.23 Halaman Login Operator
Sebelum masuk ke halaman home operator, operator diharuskan
untuk mengisi username dan password. Jika username dan password
dikenali oleh sistem, admin dapat masuk ke halaman home operator. Script
yang digunakan untuk halaman login operator ini adalah:
<? session_start();?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>:: 02531457 ::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style/02531457.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="800" border="0" align="center">
<tr>
O P
124
<td height="115" colspan="2" background="image/hafa.jpg"> </td>
</tr>
<tr>
<td width="563" height="29"> <div id="navcontainer"></div></td>
</tr>
<tr>
<td height="352" colspan="2" align="center" class="Border">
<? include "inc_index.php"; ?></td>
</tr>
<tr>
<td height="23" colspan="2" align="center" valign="middle"
class="Border"> </td>
</tr>
<tr>
<td height="34" colspan="2" align="center" valign="middle" class="Border"><font
size="-1">Copyright@2007<br>
By : Andre</font></td>
</tr>
</table>
</body>
</html>
<?php
include "koneksi.inc";
opendb();
if(isset($_POST['Submit']))
{
$in_uname=$_POST['nama'];
$in_pass=$_POST['nama2'];
$sql="SELECT * FROM admin WHERE Username = '$in_uname' and Password =
'$in_pass'";
querydb($sql);
$dt=mysql_fetch_assoc($result);
$data_login=mysql_num_rows($result);
if ($data_login==1)
{
$_SESSION['rental']=$dt['Id_Operator'];
echo "<a href='home.php'>Kembali ke Menu Utama </a> -> ";
}
else
{
echo "<div id='warning'>Username atau password anda salah !</div>";
echo "<a href='index.php'>Silahkan ulangi</a>";
125
}
}
else
{
?>
<h2 align="center"> LOGIN</h2>
<form action="<? $_SERVER['PHP_SELF']; ?>" method="post">
<table width="45%" border="0" align="center" cellpadding="2">
<tr>
<td width="32%"><strong>Nama Operator</strong></td>
<td width="4%">:</td>
<td width="64%"> <input name="nama" type="text" size="30"></td>
</tr>
<tr>
<td><strong>Password</strong></td>
<td>: </td>
<td><input name="nama2" type="password" size="30"> </td>
</tr>
<tr>
<td colspan="2"></td>
<td><input type="submit" name="Submit" value="Login">
<input type="reset" name="Reset" value="Keluar"></td>
</tr>
</table>
</form>
<?
}
closedb();
?>
4.3.3.2 Halaman Home Operator
126
Gambar 4.24 Halaman Home Operator
Halaman ini adalah halaman yang hanya dapat dimasuki hanya oleh
operator. Pada halaman ini admin dapat melakukan edit profil operator,
lihat stok mobil, tambah mobil, penyewaan mobil, cek sewa online,
pengembalian mobil, laporan bulanan, tambah member, ubah member, hapus
member, dan logout. Jika operator memilih untuk keluar dari seluruh
halaman operator, maka operator harus melakukan login dahulu untuk
masuk kehalaman operator kembali. Hal itu terjadi karena adanya script
dibawah ini yang berfungsi untuk menjaga keamanan data-data khusus yang
seharusnya hanya diakses oleh operator:
<? include 'authorisasi.inc'; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body>
127
<table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="800" height="29" colspan="2"> <div id="navcontainer"></div></td> </tr> <tr> <td width="253" valign="top" class="Border"><p><h3>Menu Utama Admin:</h3></p> <p> <ul> <li><a href="editoperator.php">Edit Profil Operator</a></li> <li><a href="stockmobil2.php">Lihat Stock Mobil</a></li> <li><a href="karyawan.php">Lihat Karyawan</a></li> <li>Penyewaan Mobil</li> <br> - <a href="sewa.php" >Buat baru</a> <br> - <a href="ceksewamobil-online.php">Cek sewa online</a> <br> <li><a href="pengembalian.php" >Pengembalian Mobil</a></li> <li><a href="laporan.php" >Laporan Bulanan</a></li> <li>Update Data Member</li> <br> - <a href="tambahmember.php">Tambah Member</a> <br> - <a href="ubahmember.php">Ubah Member</a><br> - <a href="hapusmember.php">Hapus Member</a><br> <li><a href="logout.php">LOGOUT</a></li> </ul> <p></p></td> <td width="537" height="205" align="center" class="Border"><h2> </h2> <table width="75%" border="0" align="center" cellpadding="2"> <tr> <td> <h1 align="center"> ADMIN</h1> </td> </tr> </table> <br> <br> <br> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
4.3.3.3 Halaman Edit Profil Operator
128
Gambar 4.25 Halaman Edit Operator
Halaman ini digunakan mengedit profil operator jika terjadi perubahan-
perubahan pada data operator. Pada halaman ini operator dapat merubah
data nama operator, password, alamat, serta no telpon. Berikut ini adalah
script dari halaman edit profil admin :
<? include 'authorisasi.inc' ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="352" colspan="2" align="center" class="Border"> <? include "inc_editadmin2.php"; ?> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr>
129
<tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if (isset($_POST['Submit'])) { if (!empty($_POST['password'])) { $sql="UPDATE admin SET Username = '$_POST[nama]',Password = '$_POST[password]', Alamat = '$_POST[alamat]', No_Telp = '$_POST[telp]' WHERE Id_Admin='$Id'"; } else { $sql="UPDATE operator SET Username = '$_POST[nama]', Alamat = '$_POST[alamat]', No_Telp = '$_POST[telp]' WHERE Id_operator='$Id'"; } querydb($sql); if (!$result) { echo "<div id='warning'>Update gagal</div>"; echo "<a href='editoperator.php'> << Kembali </a>"; } else { echo "<div id='warning'>Update berhasil</div>"; echo "<a href='home.php'> << Kembali </a>"; } } else { $sql="SELECT * FROM admin WHERE Id_Operator = '$Id'"; querydb($sql); $dt_user=mysql_fetch_assoc($result); ?> <h2 align="center"> EDIT OPERATOR</h2> <form action="<? $_SERVER['PHP_SELF']?>" method="post"> <table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="23%"><strong>Nama Operator</strong></td> <td width="2%">:</td> <td width="75%"> <input name="nama" type="text" size="30" value="<? echo $dt_user['Username']; ?>"></td> </tr> <tr> <td><strong>Password</strong></td> <td>: </td> <td> <input name="password" type="password" size="30"></td> </tr> <tr> <td width="23%"><strong>Alamat</strong></td> <td width="2%">:</td>
130
<td> <input name="alamat" type="text" size="50" value="<? echo $dt_user['Alamat']; ?>"></td> </tr> <tr> <td width="23%"><strong>No. Telp</strong></td> <td width="2%">:</td> <td> <input name="telp" type="text" size="30" value="<? echo $dt_user['No_Telp']; ?>"></td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="Submit" value="Setuju"> <input type="reset" name="Reset" value="Keluar" onClick="javascript:history.go(-1);"></td> </tr> </table> </form> <? } closedb(); ?>
4.3.3.4 Halaman Lihat Stok Mobil
Gambar 4.26 Halaman Lihat Stok Mobil
131
Halaman ini digunakan oleh operator untuk melihat stok mobil yang
masih ada di rental. Berikut ini adalah script dari halaman lihat stok mobil :
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; } //--> </script> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li> <? if (empty($_SESSION['rental'])) { echo "<a href='index.php'><u>H</u>OME</a>"; } else { echo "<a href='home.php'><u>H</u>OME</a>"; } ?> </li> <li ><a id="current" href="stockmobil2.php"><u>S</u>TOCK MOBIL</a></li> <li ><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center"> STOCK MOBIL</h2> <? include "inc_stokmobil2.php"; ?> </td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr>
132
</table> </body> </html>
<form action="<? echo "detailfasilitas.php?nomobil=$_GET[nomobil]"; ?>" method="post""> <table width="100%" border="1"> <tr bgcolor="#999999"> <th width="34%">Nama mobil</th> <th width="25%">Jenis mobil</th> <th width="41%">Plat nomor</th> </tr> <?php include "koneksi.inc"; opendb(); $sql="SELECT * FROM mobil GROUP BY Nama_Mobil"; querydb($sql); while ($data_mobil=mysql_fetch_assoc($result)) { echo "<tr>"; echo " <td>$data_mobil[Nama_Mobil]</td>"; echo " <td align=center>$data_mobil[Jenis_Mobil]</td>"; $sql2="SELECT No_Mobil FROM mobil where Nama_Mobil='$data_mobil[Nama_Mobil]'"; $result2=mysql_query($sql2); echo " <td align=center><select name='nomobil' style='width:200px;' onChange=MM_jumpMenu('parent',this,0)>"; echo "<option value=''>- Lihat detail</option>"; while ($data_no=mysql_fetch_assoc($result2)) { echo "<option value='detailfasilitas.php?nomobil=$data_no[No_Mobil]'>$data_no[No_Mobil]</option>"; } echo "</select></td>"; echo "</tr>"; } closedb(); ?> </table> </form>
133
4.3.3.5 Halaman Penyewaan di Rental
Gambar 4.26 Halaman Penyewaan di Rental
Halaman Sewa Mobil merupakan halaman untuk melakukan
pemesanan mobil di kantor. Operator tinggal memilih mobil yang
diinginkan oleh user dengan klik check box yang ada kemudian klik pinjam.
Script untuk halaman sewa mobil di rental ini adalah:
<? include 'authorisasi.inc'; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> </tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr>
134
<td width="563" height="29"> <div id="navcontainer"> <ul id="navlist"> <li><a href="home.php"><u>H</u>OME</a></li> <li><a href="stockmobil.php"><u>S</u>TOCK MOBIL</a></li> <li><a href="hargasewa.php"><u>H</u>ARGA SEWA</a></li> </ul> </div></td> </tr> <tr> <td height="432" colspan="2" align="center" valign="top" class="Border"><h2 align="center">SEWA MOBIL </h2> <? include "inc_sewamobil.php"; ?></td> <table width="98%" border="1" alig1n="center" cellpadding="2"> </table> <p></p><table width="97%" border="0" align="center"> <tr> <td width="88%" align="right"></td> <td width="12%"></td> </tr> </table> <p> </p><tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> <h2 align="center"> </h2> <form action="home.php" method="post"> </form> <p align="center"> </p> <div align="left"> </div> </table> </body> </html>
<?php
include "koneksi.inc";
include "hargasopir.inc";
opendb();
$id=$_SESSION['rental'];
$tgl=date("Y-m-d");
if (isset($_POST['Submit']))
{
$data = $_POST['mobil'];
$hr = $_POST['mobil'];
if(empty($data))
{
echo "Masukkan pilihan mobil !";
}
else
{
echo "<div align='left'><p>Mobil yang anda pinjam : </p>";
135
echo "<form action='$_SERVER[PHP_SELF]' method='post'>";
$i=0;
echo "<pre>";
foreach($data as $jumlah)
{ $num=$i+1;
$sql="SELECT * FROM mobil WHERE No_Mobil = '$jumlah'";
querydb($sql);
$dt=mysql_fetch_array($result);
echo $num ."." .$dt['No_Mobil'] ."<input type='hidden' name='nomobil[$i]'
value='$dt[No_Mobil]'> <input type='text' name='hari[$i]' size='3'
maxlength='2'> , <select name='koma[$i]'><option value='0'>0</option><option
value='5'>5</option></select> Hari <select name='sopir[$i]'><option value='0'>Non
sopir</option><option value='1'>Sopir</option></select> Tanggal pinjam : <input
type='text' name='tgl_pinjam' value=" .date("d-m-Y") ."><br>";
$i++;
}
echo "</pre>";
echo "Jumlah mobil : " .$i;
echo "<input type='hidden' name='jum' value='$i'>";
echo "<br><br><input type='submit' name='Pinjam' value='Pinjam'> <input
type='button' name='batal' value='Batal' onClick='javascript:history.go(-1);'>";
echo "</form>";
echo "N.B : Tambah Sopir @ + Rp. 100.000,00";
echo "</div>";
}
die();
}
else if(isset($_POST['Pinjam']))
{
$in_tgl=$_POST['tgl_pinjam'];
$nomobil=$_POST['nomobil'];
$jum=$_POST['jum'];
$sopir=$_POST['sopir'];
$hari=$_POST['hari'];
$koma=$_POST['koma'];
echo "<div align='left'><p><h3>Total Biaya : </h3></p>";
echo "<pre>";
$tot_all=0;
echo "<form action='$_SERVER[PHP_SELF]' method='post'>";
for($i=1;$i<=$jum;$i++)
{
$num=$i-1;
136
$offset=($hari[$num]*24*60*60);
$sql="select * from mobil where No_Mobil='$nomobil[$num]'";
querydb($sql);
$dt=mysql_fetch_assoc($result);
if ($sopir[$num] == 0)
{
if ($koma[$num]==5)
{
$h_separo=ceil($dt['Harga_Sewa']-50000);
//if ($hari[$num] == 0)
//{
//$total_h=$h_separo;
//}
//else
//{
$total_h=ceil($dt['Harga_Sewa'] * $hari[$num]) +
$h_separo;
//}
}
else
{
$total_h = ceil($dt['Harga_Sewa'] * $hari[$num]);
}
}
else
{
if ($koma[$num]==5)
{
$h_separo=ceil($dt['Harga_Sewa']-50000);
//if ($hari[$num] == 0)
//{
// $total_h=$h_separo + $harga_sopir;
//}
//else
//{
$total_h=ceil($dt['Harga_Sewa']*$hari[$num])+
$harga_sopir + $h_separo;
//}
}
else
{
$total_h = ceil($dt['Harga_Sewa'] * $hari[$num]) + $harga_sopir;
}
}
137
echo $i .".<b>Nomor mobil :</b> <input type='hidden' value='$nomobil[$num]'
name='nomobil[]'>" .$nomobil[$num] ."<br>";
echo " - Total Biaya : Rp.<input type='text' value='" .$total_h ." '
name='totalbiaya[]' readonly='1'>,00 <br>";
echo " - Tanggal pinjam : <input type='text' value='$in_tgl' name='tgl_pinjam'
readonly='1'><br>";
echo " - Tanggal kembali : <input type='text' value='" .date("d-m-
Y",strtotime($in_tgl)+$offset) ."' name='tgl_kembali' readonly='1'><br>";
$tot_all= $tot_all + $total_h;
}
echo "</pre>";
echo "<br>";
echo "Total biaya keseluruhan = Rp.<input type='text' value='" .$tot_all ."'
name='total_semua' readonly='1'>,00";
echo "<br><br><input name='Ok' type='submit' value=' Ok '><input name='Batal'
type='submit' value='Batal' style:'javascript:history.go(-1);'>";
echo "</form>";
echo "</div>";
die();
}
else if (isset($_POST['Ok']))
{
$nomobil=$_POST['nomobil'];
$totalbiaya=$_POST['totalbiaya'];
$tgl_kembali=date("Y-m-d",strtotime($_POST['tgl_kembali']));
$tgl_pinjam=date("Y-m-d",strtotime($_POST['tgl_pinjam']));
$i=0;
foreach($nomobil as $no)
{
$sql="INSERT INTO sewa values(' ','$id','$tgl_pinjam',' ',' ')";
querydb($sql);
$sql="UPDATE mobil SET Status_Mobil = 'KELUAR' WHERE No_Mobil='$no'";
querydb($sql);
$sql="SELECT No_Nota from sewa order by No_Nota DESC";
querydb($sql);
$nonota=mysql_fetch_assoc($result);
$sql="INSERT INTO detailsewa values('$nonota[No_Nota]','
','$no','$totalbiaya[$i]','$tgl_kembali',' ') ";
querydb($sql);
$sql="SELECT Nama_Lengkap from penyewa Where ID_Penyewa=$id";
138
querydb($sql);
$dt_nama=mysql_fetch_assoc($result);
$i++;
}
if (!$result)
{
echo "Gagal !";
}
else
{
echo "<div id='warning'>Pemesanan Berhasil !</div>";
echo "<br><br>";
echo "<div id='box'>";
echo "No Nota anda : " .$nonota['No_Nota'];
echo "<br>Atas nama : " .$dt_nama['Nama_Lengkap'];
echo "</div>";
echo "<br><br>Silahkan datang ke kantor untuk menyelesaikan administrasi !";
if ($tgl_pinjam != date("d-m-Y"))
{
echo "<p align='left'><b>NB : <span id='warning'>
Dalam waktu 2 hari sebelum tanggal " .date("d-m-
Y",strtotime($tgl_pinjam)) ." harap konfirmasi ke kantor
Jika tidak maka pemesanan sewa mobil anda akan
dibatalkan !
</span></b></p>";
}
echo "<br><br>";
echo "<a href='home.php'>[ Kembali ]</a>";
}
die();
}
$sql="SELECT No_Mobil,Nama_Mobil,Harga_Sewa FROM mobil Where Status_Mobil='ada'
order by Nama_Mobil asc";
querydb($sql);
$jum_data=mysql_num_rows($result);
?>
<form action="<? $_SERVER['PHP_SELF'] ?>" method="post">
<table width="98%" border="1">
<tr bgcolor="#CCCCCC">
<td width="13%" height="61" align="center" td size=10><strong>No.
Mobil</strong></td>
<td width="20%" align="center" td size=10><strong>Stock Mobil</strong></td>
<td width="12%" align="center" td><strong> 1 Hari Sopir </strong></td>
139
<td width="19%" align="center" td><strong> 1/2 Hari Non Sopir</strong></td>
<td width="15%" align="center" td><strong> 1 Hari + Sopir</strong></td>
<td width="16%" align="center" td><strong> 1/2 Hari + Sopir</strong></td>
<td width="5%" align="center" td><strong> Sewa</strong></td>
</tr>
<?
$i=0;
while($data_harga=mysql_fetch_array($result))
{
$h_non_sopir=$data_harga['Harga_Sewa'];
$s_non_sopir=ceil($data_harga['Harga_Sewa']-50000);
$h_sopir=ceil($data_harga['Harga_Sewa'] + $harga_sopir);
$s_sopir=ceil($data_harga['Harga_Sewa'] - 50000 + $harga_sopir);
echo "<tr>";
echo "<td>" .$data_harga['No_Mobil'] ."</td>";
echo "<td>" .$data_harga['Nama_Mobil'] ."</td>";
echo "<td align='center'>" .$h_non_sopir ."</td>";
echo "<td align='center'>" .$s_non_sopir ."</td>";
echo "<td align='center'>" .$h_sopir ."</td>";
echo "<td align='center'>" .$s_sopir ."</td>";
echo "<td align='center'><input type='checkbox' name='mobil[$i]'
value='$data_harga[No_Mobil]'>";
echo "</tr>";
$i++;
}
?>
<tr align="right" bgcolor="#CCCCCC">
<td colspan="7" td size=10>
<input type="submit" name="Submit" value="Pinjam">
<input type="reset" name="Reset" value="Kembali" onClick="javascript:history.go(-
1);">
</td>
</tr>
</table>
</form>
<?
closedb();
?>
140
4.3.3.6 Halaman Cek Sewa Online
Gambar 4.28 Halaman Cek Sewa Online
Halaman cek sewa online merupakan halaman untuk melakukan
pengecekan pemesanan mobil via website. Operator tinggal memasukkan
nomer nota user, kemudian semua data pemesanan user tersebut akan
ditampilkan. Script untuk halaman cek sewa online ini adalah:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="300" colspan="2" align="center" valign="top" class="Border"><BR><h2 align="center">
141
CEK SEWA ONLINE</h2> <? include "inc_ceksewamobil-online.php"; ?> <p align="left"> << <a href="home.php">Kembali</a> </p></td> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> Masukkan No. Nota : <input type="text" name="cari" value="<? if (empty($_POST['cari'])) { echo $_POST['id']; } else { echo $_POST['cari']; } ?>"> <input type="submit" name="cek" value="CEK"> </form> <? include "koneksi.inc"; opendb(); if (isset($_POST['cek'])) { $sql="SELECT s.*,p.* FROM sewa s,penyewa p WHERE s.ID_Penyewa=p.ID_Penyewa and No_Nota = '$_POST[cari]'"; querydb($sql); $data_penyewa=mysql_fetch_assoc($result); $jum_data=mysql_num_rows($result); if ($jum_data==0) { echo "Tidak ada ada"; } else { ?> <table width="90%" border="0" cellpadding="0" cellspacing="0" style="border:1px solid #000000;padding:5px;"> <tr> <td bordercolor="#666666"><table width="75%" border="0"> <tr> <td width="33%">No. Nota</td> <td> : <? echo $data_penyewa['No_Nota']; ?></td> </tr> <tr> <td>Nama penyewa</td> <td>: <? echo $data_penyewa['Nama_Lengkap']; ?></td> </tr> <tr> <td>Alamat</td> <td>: <? echo $data_penyewa['Alamat'] ." " .$data_penyewa['Kota'] ." " .$data_penyewa['Propinsi']; ?></td> </tr> </table></td> </tr>
142
<tr> <td bordercolor="#666666"> <form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> <input type="hidden" name="id" value="<? echo $data_penyewa['No_Nota']; ?>"> <table width="75%" border="0"> <tr> <td width="33%">Jaminan</td> <td>: <input name="jaminan" type="text" id="jaminan" size="40" value="<? echo $data_penyewa['Jaminan']; ?>"></td> </tr> <tr> <td>Uang muka</td> <td>: <input name="um" type="text" id="um" size="40" value="<? echo $data_penyewa['Dp']; ?>"></td> </tr> <tr> <td> </td> <td><input type="submit" name="Ok" value="Ok" style="width:60px;"> <input name="reset" type="reset" id="reset" value="Batal" style="width:60px;"></td> </tr> </table> <hr align="center" noshade> </form> </td> </tr> <tr> <td bordercolor="#666666"> <table width="75%" border="0" cellpadding="0" cellspacing="0" style="padding:2px;"> <tr> <td width="10%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>No mobil</strong></td> <td width="18%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Tanggal pinjam</strong></td> <td width="16%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Tanggal kembali</strong></td> <td width="14%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Biaya</strong></td> </tr> <? $sql="SELECT * FROM detailsewa WHERE No_Nota='$data_penyewa[No_Nota]'"; querydb($sql); $total=0; while($dt_detail=mysql_fetch_assoc($result)) { echo "<tr>"; echo "<td style='border:1px solid #000000;'>$dt_detail[No_Mobil]</td>"; echo "<td style='border:1px solid #000000;'>" .date("d-m-Y",strtotime($data_penyewa['Tgl_Sewa'])) ."</td>"; echo "<td style='border:1px solid #000000;'>" .date("d-m-Y",strtotime($dt_detail['Tgl_Kembali'])) ."</td>"; echo "<td align='right' style='border:1px solid #000000;'>$dt_detail[Biaya]</td>"; echo "</tr>"; $total=$total+$dt_detail['Biaya']; } ?> <tr> <td colspan="3" align="right"><strong>Total :</strong> </td> <td align="right"><b><? echo $total; ?></b></td> </tr> <tr>
143
<td colspan="3" align="right"><strong>Kekurangan :</strong> </td> <td align="right"><font color="#FF0000"><b><? echo $data_penyewa['Dp']-$total; ?></b></font></td> </tr> </table></td> </tr> <tr> <td valign="top" bordercolor="#666666"> </td> </tr> </table> <? } } if(isset($_POST['Ok'])) { $id=$_POST['id']; $sql="UPDATE sewa SET Jaminan='$_POST[jaminan]',Dp='$_POST[um]' WHERE No_Nota='$id'"; querydb($sql); echo "Proses peminjaman berhasil diupdate !"; } closedb(); ?>
4.3.3.7 Halaman Pengembalian Mobil
Gambar 4.29 Halaman Pengembalian Mobil
Halaman pengembalian mobil merupakan halaman untuk mencatat
pengembalian mobil. Operator tinggal memasukkan nomer nota user,
kemudian semua data pemesanan user tersebut akan ditampilkan, setelah itu
144
tekan tombol proses untuk memproses pengembalian mobil. Script untuk
halaman pengembalian mobil ini adalah:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="252" colspan="2" align="center" valign="top" class="Border"><h3> PENGEMBALIAN MOBIL </h3> <? include "inc_pengembalian.php"; ?> <p align="left"> << <a href="home.php">Kembali</a> </p> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> Masukkan No. Nota : <input type="text" name="cari" value="<? if (empty($_POST['cari'])) { echo $_POST['id']; } else { echo $_POST['cari']; } ?>"> <input type="submit" name="cek" value="CEK"> </form> <? include "koneksi.inc"; opendb(); if (isset($_POST['cek'])) { $sql="SELECT s.*,p.* FROM sewa s,penyewa p WHERE s.ID_Penyewa=p.ID_Penyewa and No_Nota = '$_POST[cari]'"; querydb($sql); $data_penyewa=mysql_fetch_assoc($result); $jum_data=mysql_num_rows($result); if ($jum_data==0) {
145
echo "Tidak ada ada"; } else { ?> <form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> <table width="90%" border="0" cellpadding="0" cellspacing="0" style="border:1px solid #000000;padding:5px;"> <tr> <td height="41" bordercolor="#666666"><strong>Tanggal Pengembalian :</strong> <? echo date("d-m-Y"); ?></td> </tr> <tr> <td bordercolor="#666666"><table width="75%" border="0"> <tr> <td width="33%">No. Nota</td> <td> : <? echo $data_penyewa['No_Nota']; ?></td> </tr> <tr> <td>Nama penyewa</td> <td>: <? echo $data_penyewa['Nama_Lengkap']; ?></td> </tr> <tr> <td>Alamat</td> <td>: <? echo $data_penyewa['Alamat'] ." " .$data_penyewa['Kota'] ." " .$data_penyewa['Propinsi']; ?></td> </tr> </table></td> </tr> <tr> <td bordercolor="#666666"> <input type="hidden" name="id" value="<? echo $data_penyewa['No_Nota']; ?>"> <table width="75%" border="0"> <tr> <td width="33%">Jaminan</td> <td>: <? echo $data_penyewa['Jaminan']; ?></td> </tr> <tr> <td>Uang muka</td> <td>: <? echo $data_penyewa['Dp']; ?></td> </tr> </table> <hr align="center" noshade> </td> </tr> <tr> <td bordercolor="#666666"> <table width="100%" border="0" cellpadding="0" cellspacing="0" style="padding:2px;"> <tr> <td width="3%" bgcolor="#CCCCCC" style="border:1px solid #000000;"> </td> <td width="14%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>No mobil</strong></td> <td width="13%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Tanggal pinjam</strong></td> <td width="14%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Tanggal kembali</strong></td> <td width="12%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Biaya</strong></td> <td width="15%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Denda</strong></td>
146
<td width="19%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Total</strong></td> <td width="10%" bgcolor="#CCCCCC" style="border:1px solid #000000;"><strong>Keterangan</strong></td> </tr> <? $sql="SELECT d.*,m.* FROM detailsewa d, mobil m WHERE m.No_Mobil=d.No_Mobil and d.No_Nota='$data_penyewa[No_Nota]'"; querydb($sql); $total=0; $totaldenda=0; while($dt_detail=mysql_fetch_assoc($result)) { if ($dt_detail['tgl_Kembali'] < date("d-m-Y")) { $lama=date("d-m-Y") - $dt_detail['tgl_Kembali']; $denda=$lama*$dt_detail['Harga_Sewa']; } else { $denda=0; } echo "<tr>"; if ($dt_detail['Status_Mobil']=="KELUAR") { echo "<td style='border:1px solid #000000;'><input type='checkbox' name='cek[]' value='$dt_detail[No_Mobil]'></td>"; } else { echo "<td style='border:1px solid #000000;'> </td>"; } echo "<td style='border:1px solid #000000;'>$dt_detail[No_Mobil]</td>"; echo "<td style='border:1px solid #000000;'>" .date("d-m-Y",strtotime($data_penyewa['Tgl_Sewa'])) ."</td>"; echo "<td style='border:1px solid #000000;'>" .date("d-m-Y",strtotime($dt_detail['Tgl_Kembali'])) ."</td>"; echo "<td align='right' style='border:1px solid #000000;'>$dt_detail[Biaya]</td>"; echo "<td align='right' style='border:1px solid #000000;'><input type='hidden' name='in_denda[]' value='$denda'>$denda</td>"; $totalbiaya=$denda+$dt_detail['Biaya']; if ($dt_detail['Status_Mobil']=="ADA") { $temptotal=0; } else { $temptotal=$denda+$dt_detail['Biaya']; } echo "<td align='right' style='border:1px solid #000000;'>$totalbiaya</td>"; if ($dt_detail['Status_Mobil']=="ADA") { echo "<td align='right' style='border:1px solid #000000;'>lunas</td>"; } else { echo "<td align='right' style='border:1px solid #000000;'>belum lunas</td>"; } echo "</tr>"; $temptotal2=$total+$temptotal; $total=$total+$totalbiaya;
147
} $kekurangan=$data_penyewa['Dp']-$temptotal2; if ($kekurangan==$data_penyewa['Dp']) { $printkekurangan=0; } else { $printkekurangan=$kekurangan; } ?> <tr> <td colspan="6" align="right"><strong>Total biaya:</strong> </td> <td align="right"><b><? echo $total; ?></b></td> <td align="right"> </td> </tr> <tr> <td colspan="6" align="right"><strong>Kekurangan :</strong> </td> <td align="right"><font color="#FF0000"><b><? echo $printkekurangan; ?></b></font></td> <td align="right"> </td> </tr> </table> <? if ($printkekurangan==0) { echo "<p align='left'><span style='font-size:24pt;color:red;background-color:yellow;'>LUNAS</span></p>"; } ?> </td> </tr> <tr> <td valign="top" bordercolor="#666666"> </td> </tr> <tr> <td align="center" bordercolor="#666666"><input name="Proses" type="submit" id="Proses" value="Proses"></td> </tr> </table> </form> <? } } if(isset($_POST['Proses'])) { $id=$_POST['cek']; $nonota=$data_penyewa['No_Nota']; $in_denda=$_POST['in_denda']; foreach ($id as $no) { $sql="UPDATE mobil SET Status_Mobil='ADA' WHERE No_Mobil = '$no'"; querydb($sql); $sql="UPDATE detailsewa SET Denda='$in_denda' WHERE No_Mobil='$no' and No_Nota='$nonota'"; querydb($sql); //$sql2="SELECT * FROM sewa WHERE No_Nota='$nonota'"; //querydb($sql2); //$sql3="SELECT * FROM detail sewa WHERE No_Nota='$nonota' and No_Mobil ='$no'"; //$result3=mysql_query($sql3);
148
} echo "Proses peminjaman berhasil diupdate !"; ?> <p align="left"> << <a href="home.php">Kembali</a> </p> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html> <? die(); } closedb(); ?>
4.3.3.8 Halaman Laporan Bulanan
Gambar 4.30 Halaman Laporan Bulanan
Halaman laporan bulanan merupakan halaman untuk melihat laporan
sewa mobil yang terjadi selama satu bulan. Operator tinggal memasukkan
149
bulan dan tahun, maka laporan bulanan sewa mobil per bulan akan
ditampilkan. Script untuk halaman pengembalian mobil ini adalah:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="252" colspan="2" align="center" valign="top" class="Border"><h3> PENGEMBALIAN MOBIL </h3> <form action="laporan.php" method="post"> <table width="98%"> <tr> <td><table width="49%" border="0" align="left" cellpadding="2"> <tr> <td width="41%" height="26"><strong>BULAN</strong></td><> <td width="3%"><strong>:</strong></td> <td width="56%"> <select name="bulan"> <option value="01">Januari</option> <option value="02">Februari</option> <option value="03">Maret</option> <option value="04">April</option> <option value="05">Mei</option> <option value="06">Juni</option> <option value="07">Juli</option> <option value="08">Agustus</option> <option value="09">September</option> <option value="10">Oktober</option> <option value="11">November</option> <option value="12">Desember</option> </select></td> </tr> </table> <table width="46%" border="0"> <tr> <td width="36%"><strong>TAHUN</strong></td> <td width="5%"><strong>:</strong> </td> <td width="26%"> <select name="tahun"> <? $thn=date("Y"); echo "<option value='$thn'>$thn</option>"; for($i=1;$i<=5;$i++) { $in_thn=$thn-$i; echo "<option value='$in_thn'>$in_thn</option>"; } ?> </select></td>
150
<td width="29%"><input type="submit" name="cari" value="Cari"></td> <td width="4%"> </td> </tr> </table> <table width="50%" border="0"> <tr> <td width="28%"><div align="left">Nama</div></td> <td width="6%">:</td> <td width="66%"><div align="left"></div></td> </tr> </table></td> </tr> <tr> <td> <? include "inc_laporan.php"; ?> </td> </tr> <tr> <td><table width="100%" border="0"> <tr align="center"> <td> </td> </tr> </table></td> </tr> <tr> <td align="left"><< <a href="home.php">Kembali</a></td> </tr> </table> </form> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<? include "koneksi.inc"; opendb(); if (isset($_POST['cari'])) { $thn=$_POST['tahun']; $bln=$_POST['bulan']; $sql="SELECT d.*,s.*,p.Nama_Lengkap,v.Nama FROM detailsewa d, sewa s, penyewa p,driver v WHERE p.ID_Penyewa=s.ID_Penyewa and s.No_Nota=d.No_Nota and d.ID_Driver=v.ID_Driver"; querydb($sql); $jum_data=mysql_num_rows($result); if ($jum_data==0) { echo "<br><br><br><br>";
151
echo "<center>Tidak ada data !<center>"; echo "<br><br><br><br>"; } else { ?> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr align="center" bgcolor="#CCCCCC"> <td width="8%"><strong>No.Nota</strong></td> <td width="14%"><strong>Tanggal Sewa</strong></td> <td width="28%"><strong>Nama Penyewa</strong></td> <td width="14%"><strong>No. Mobil</strong></td> <td width="15%"><strong>Nama Driver</strong></td> <td width="11%"><strong>Biaya Sewa</strong></td> <td width="10%"><strong>Denda</strong></td> </tr> <? $sewa=0; $denda=0; while($dt_laporan=mysql_fetch_assoc($result)) { $cek_bulan=substr($dt_laporan['Tgl_Sewa'],5,2); $cek_thn=substr($dt_laporan['Tgl_Sewa'],0,4); if ($cek_bulan==$bln && $cek_thn==$thn) { echo "<tr>"; echo "<td>$dt_laporan[No_Nota]</td>"; echo "<td>" .date("d-m-Y",strtotime($dt_laporan['Tgl_Sewa'])) ."</td>"; echo "<td>$dt_laporan[Nama_Lengkap]</td>"; echo "<td>$dt_laporan[No_Mobil]</td>"; echo "<td>$dt_laporan[Nama]</td>"; echo "<td align='right'>$dt_laporan[Biaya]</td>"; echo "<td align='right'>$dt_laporan[Denda]</td>"; echo "</tr>"; $sewa=$sewa+$dt_laporan['Biaya']; $denda=$denda+$dt_laporan['Denda']; } } echo "<tr>"; echo "<td colspan='6' align='right'><b>$sewa</b></td>"; echo "<td align='right'><b>$denda</b></td>"; echo "</tr>"; echo "</table>"; $total=$sewa+$denda; echo "<br>"; echo "<p align='right'><b>Total : </b>$total</p>"; } } ?>
4.3.3.9 Halaman Tambah Member
152
Gambar 4.31 Halaman Tambah Member
Halaman tambah member merupakan halaman untuk menambah data-data
member baru. Pada halaman ini operator dapat menambah member baru dengan
menginputkan data nama member, password, email member, jenis kelamin
member, pekerjaan member, alamat member, kota asal member, propinsi asal
member.. Script untuk halaman ubah member ini adalah :
<? include 'authorisasi.inc' ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td> </tr> <tr> <td height="252" colspan="2" align="center" class="Border"> <? include "inc_tambahmember.php" ?> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td>
153
</tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<?php include "koneksi.inc"; opendb(); if (isset($_POST['Submit'])) { $sql="insert into penyewa values ('','$_POST[nama]','$_POST[password]','$_POST[email]','$_POST[radiobutton]','$_POST[pekerjaan]','$_POST[alamat]','$_POST[kota]','$_POST[propinsi]')"; querydb($sql); if (!$result) { echo "<div id='warning'>Registrasi gagal</div>"; } else { echo "<div id='warning'>Registrasi berhasil</div>"; echo "<a href='home.php'>Kembali</a>"; } } else { ?> <h2 align="center"> DAFTAR MEMBER</h2> <form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> <table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="28%"><strong>Nama Member</strong></td> <td width="3%">:</td> <td colspan="2"> <input name="nama" type="text" size="30"></td> </tr> <tr> <td><strong>Password</strong></td> <td>: </td> <td colspan="2"> <input name="password" type="password" size="30"></td> </tr> <tr> <td width="28%"><strong>Email</strong></td> <td width="3%">:</td> <td colspan="2"> <input name="email" type="text" size="30"></td> </tr> <tr> <td width="28%"><strong>Jenis Kelamin</strong></td> <td width="3%">:</td> <td width="19%"> <input type="radio" name="radiobutton" value="pria"> Pria </td> <td width="50%"><input type="radio" name="radiobutton" value="wanita"> Wanita</td> </tr> <tr> <td width="28%"><strong>Pekerjaan</strong></td> <td width="3%">:</td> <td colspan="2"> <input name="pekerjaan" type="text" size="30"></td> </tr>
154
<tr> <td width="28%"><strong>Alamat</strong></td> <td width="3%">:</td> <td colspan="2"> <input name="alamat" type="text" size="50"></td> </tr> <tr> <td width="28%"><strong>Kota</strong></td> <td width="3%">:</td> <td colspan="2"> <input name="kota" type="text" size="30"></td> </tr> <tr> <td width="28%"><strong>Propinsi</strong></td> <td width="3%">:</td> <td colspan="2"> <input name="propinsi" type="text" size="30"></td> </tr> <tr> <td colspan="2"></td> <td colspan="2"><input type="submit" name="Submit" value="Setuju"> <input type="reset" name="Reset" value="Batal" onClick="javascript:history.go(-1);"></td> </tr> </table> </form> <? } closedb(); ?>
4.3.3.10 Halaman Ubah Member
Gambar 4.32 Halaman Ubah Member
155
Halaman ubah member merupakan halaman untuk melihat
merubah data-data member apabila terjadi suatu perubahan. Pada halaman
ini operator dapat merubah id member, nama member, email member, jenis
kelamin member, pekerjaan member, alamat member, kota asal member,
propinsi asal member.. Script untuk halaman ubah member ini adalah :
<h2 align="center"> UBAH MEMBER</h2> <?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if (isset($_POST['Submit'])) { $sql="UPDATE penyewa SET Nama_Lengkap = '$_POST[nama]',Password = '$_POST[password]',Email = '$_POST[email]',Jenis_Kelamin = '$_POST[jeniskelamin]' , Pekerjaan = '$_POST[pekerjaan]', Alamat = '$_POST[alamat]', Kota = '$_POST[kota]', Propinsi = '$_POST[propinsi]' WHERE ID_Penyewa='$Id'"; querydb($sql); if (!$result) { echo "<div id='warning'>Update gagal</div>"; } else { echo "<div id='warning'>Update berhasil</div>"; //echo "<a href='home.php'>Kembali</a>"; } } else if ($_GET['aksi']=="ubah") { $sql="SELECT * FROM penyewa WHERE ID_Penyewa = '$_GET[iduser]'"; querydb($sql); $dt_user=mysql_fetch_assoc($result); ?> <form action="<? $_SERVER['PHP_SELF'] ?>" method="post"> <table width="60%" border="0" align="center" cellpadding="2"> <tr> <td width="28%"><strong>ID Member</strong></td> <td width="3%">:</td> <td> <input name="idmember" type="text" size="10" value="<? echo $dt_user['ID_Penyewa']; ?>"></td> </tr> <tr> <td width="28%"><strong>Nama Member</strong></td> <td width="3%">:</td> <td> <input name="nama" type="text" size="30" value="<? echo $dt_user['Nama_Lengkap']; ?>"></td> </tr> <tr> <td><strong>Password</strong></td> <td>: </td> <td> <input name="password" type="password" size="30" value="<? echo $dt_user['Password']; ?>"></td> </tr> <tr> <td width="28%"><strong>Email</strong></td>
156
<td width="3%">:</td> <td> <input name="email" type="text" size="30" value="<? echo $dt_user['Email']; ?>"></td> </tr> <tr> <td width="28%"><strong>Jenis Kelamin</strong></td> <td width="3%">:</td> <td> <select name="jeniskelamin"> <option value="<? echo $dt_user['Jenis_Kelamin']; ?>"> <? if ($dt_user['Jenis_Kelamin']=="P") { echo "Pria"; } else { echo "Wanita"; } ?> </option> <? if ($dt_user['Jenis_Kelamin']=="P") { echo "<option value='W'>Wanita</option>"; } else { echo "<option value='P'>Pria</option>"; } ?> </select></td> </tr> <tr> <td width="28%"><strong>Pekerjaan</strong></td> <td width="3%">:</td> <td> <input name="pekerjaan" type="text" size="30" value="<? echo $dt_user['ID_Penyewa']; ?>"></td> </tr> <tr> <td width="28%"><strong>Alamat</strong></td> <td width="3%">:</td> <td> <input name="alamat" type="text" size="50" value="<? echo $dt_user['Alamat']; ?>"></td> </tr> <tr> <td width="28%"><strong>Kota</strong></td> <td width="3%">:</td> <td> <input name="kota" type="text" size="30" value="<? echo $dt_user['Kota']; ?>"></td> </tr> <tr> <td width="28%"><strong>Propinsi</strong></td> <td width="3%">:</td> <td> <input name="propinsi" type="text" size="30" value="<? echo $dt_user['Propinsi']; ?>"></td> </tr> <tr> <td colspan="2"></td> <td><input type="submit" name="Submit" value="Setuju"> <input type="reset" name="Reset" value="Batal" onClick="javascript:history.go(-1);"></td> </tr> </table> </form>
157
<? } else { ?> <table width="100%" cellpadding="0" cellspacing="0" style="border:2px solid #000000;padding:3px;"> <tr align="center" bgcolor="#CCCCCC"> <td width="3%"><strong>ID</strong></td> <td width="24%"><strong>Nama_Lengkap</strong></td> <td width="17%"><strong>Email</strong></td> <td width="7%"><strong>Jenis kelamin</strong></td> <td width="11%"><strong>Pekerjaan</strong></td> <td width="17%"><strong>Alamat</strong></td> <td width="7%"><strong>Kota </strong></td> <td width="8%"><strong>Propinsi</strong></td> <td width="6%"><strong>Aksi</strong></td> </tr> <? $sql="SELECT * FROM penyewa ORDER BY ID_Penyewa ASC"; querydb($sql); while($dt_user=mysql_fetch_assoc($result)) { echo "<tr>"; echo "<td bgcolor='#FFFFCC'>$dt_user[ID_Penyewa]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Nama_Lengkap]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Email]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Jenis_Kelamin]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Pekerjaan]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Alamat]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Kota]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Propinsi]</td>"; echo "<td bgcolor='#FFFFCC'><a href='ubahmember.php?aksi=ubah&iduser=$dt_user[ID_Penyewa]'>Ubah</a></td>"; echo "</tr>"; } ?> </table> <? } closedb(); ?> <p align="left"> << <a href="home.php">Kembali</a> </p>
158
4.3.3.11 Halaman Hapus Member
Gambar 4.33 Halaman Hapus User
Halaman hapus member merupakan halaman untuk menghapus
data-data member apabila meber tersebut sudah tidak aktif lagi. Pada
halaman ini operator dapat menghapus id member, nama member, email
member, jenis kelamin member, pekerjaan member, alamat member, kota
asal member, propinsi asal member.. Script untuk halaman ubah member ini
adalah :
<? include 'authorisasi.inc' ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>:: 02531457 ::</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style/02531457.css" rel="stylesheet" type="text/css"> </head> <body> <table width="800" border="0" align="center"> <tr> <td height="115" colspan="2" background="image/hafa.jpg"> </td> </tr> <tr> <td width="563" height="29"> <div id="navcontainer"></div></td>
159
</tr> <tr> <td height="252" colspan="2" align="center" valign="top" class="Border"> <? include "inc_hapusmember.php" ?> </tr> <tr> <td height="23" colspan="2" align="center" valign="middle" class="Border"> </td> </tr> <tr> <td height="34" colspan="2" align="center" valign="middle" class="Border"><font size="-1">Copyright@2007<br> By : Andre</font></td> </tr> </table> </body> </html>
<h2 align="center"> HAPUS MEMBER</h2> <?php include "koneksi.inc"; $Id=$_SESSION['rental']; opendb(); if ($_GET['aksi']=="hapus") { $sql="DELETE FROM penyewa WHERE ID_Penyewa = '$_GET[iduser]'"; querydb($sql); if (!$result) { echo "<div id='warning'>Hapus gagal</div>"; //echo "<a href='editdriver.php'> << Kembali </a>"; } else { echo "<div id='warning'>Hapus berhasil</div>"; //echo "<a href='home.php'> << Kembali </a>"; } } else { ?> <table width="100%" cellpadding="0" cellspacing="0" style="border:2px solid #000000;"> <tr align="center" bgcolor="#CCCCCC"> <td width="3%"><strong>ID</strong></td> <td width="27%"><strong>Nama_Lengkap</strong></td> <td width="15%"><strong>Email</strong></td> <td width="6%"><strong>Jenis kelamin</strong></td> <td width="11%"><strong>Pekerjaan</strong></td> <td width="17%"><strong>Alamat</strong></td> <td width="7%"><strong>Kota </strong></td> <td width="8%"><strong>Propinsi</strong></td> <td width="6%"><strong>Aksi</strong></td> </tr> <? $sql="SELECT * FROM penyewa ORDER BY ID_Penyewa ASC"; querydb($sql); while($dt_user=mysql_fetch_assoc($result)) { echo "<tr>"; echo "<td bgcolor='#FFFFCC'>$dt_user[ID_Penyewa]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Nama_Lengkap]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Email]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Jenis_Kelamin]</td>";
160
echo "<td bgcolor='#FFFFCC'>$dt_user[Pekerjaan]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Alamat]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Kota]</td>"; echo "<td bgcolor='#FFFFCC'>$dt_user[Propinsi]</td>"; echo "<td bgcolor='#FFFFCC'><a href='hapusmember.php?aksi=hapus&iduser=$dt_user[ID_Penyewa]'>Hapus</a></td>"; echo "</tr>"; } ?> </table> <? } closedb(); ?> <p align="left"> << <a href="home.php">Kembali</a> </p>
161
BAB V
ANALISIS HASIL
5.1 Analisa Manfaat
Manfaat yang bisa diperoleh dengan adanya sistem ini adalah sebagai
berikut:
1. Pengunjung situs akan lebih mudah untuk mengetahui stok mobil dan harga
sewa mobil yang ada di Hafa Car Rental.
2. Pengunjung situs dapat melakukan transaksi penyewaan mobil secara online.
3. Hafa Car Rental sebagai suatu instansi dapat lebih dikenal oleh masyarakat
luas.
5.2 Kelebihan Sistem Yang Dibuat
Kelebihan yang dibuat dari sistem yang dibuat adalah sebagai berikut :
1. Pemesanan sewa mobil bisa dilakukan oleh penyewa tanpa harus datang ke
Hafa Car Rental.
2. Penyewa dapat mengetahui stok mobil dan harga sewa mobil tanpa harus
datang ke Hafa Car Rental.
3. Memudahkan manager untuk melakukan pengecekkan transaksi sewa mobil
di Hafa Car Rental.
4. Setiap bulan manager memperoleh report hasil transaksi sewa mobil tanpa
harus melakukan backup transaksi yang telah terjadi.
162
.
5.3 Kekurangan Sistem Yang Dibuat
Beberapa kelemahan yang terdapat dari sistem yang sudah dibuat adalah:
1. Mobil yang sudah dipesan namun belum disewa tidak dapat
ditampilkan di Web.
2. Perhitungan denda masih terjadi kesalahan.
3. Laporan penyewaan mobil belum benar, misalnya : jika diinputkan
bulan September maka data yang ditampilkan adalah bulan
Januari.
163
BAB VI
PENUTUP
6.1 Kesimpulan
Setelah mendisain dan mengimplementasikan Sistem Informasi
Pengelolaan Rental Mobil, maka disimpulkan bahwa secara umum sistem dapat
berfungsi dengan baik untuk menangai pemesanan mobil, menampilkan stok
mobil, harga sewa, pengecekan pemesanan secara online namun masih memiliki
kelemahan dalam hal perhitungan denda, laporan pernyewaan mobil serta status
mobil sudah disewa atau masih sebatas dipesan.
6.2 Saran
Dari sistem yang dibuat ini masih dibutuhkan beberapa saran bagi
pengembangan sistem ini menuju ke arah yang lebih baik dan bermanfaat,
diantaranya adalah sebagai berikut ini :
1. Perhitungan denda harus diperbaiki.
2. Status mobil harus diperbaiki lagi, jika mobil belum disewa seharusnya mobil
masih ditampilkan.
3. Laporan bulanan harus diperbaiki, bulan yang ditampilkan harus sesuai
denagn bulan yang diinputkan.
DAFTAR PUSTAKA
Sidik, Betha, MySQL Untuk Pengguna, Administrator, dan Pengembangan Aplikasi
Web, Informatika Bandung, Bandung, 2003.
Purwanto, Yudhi, Pemrograman Web dengan PHP, Elex Media Komputindo,
Jakarta, 2001.
Gunawan, Ridowati, Diktat Kuliah Rekayasa Perangkat Lunak II Teknik Informatika
Universitas Sanata Dharma, Yogyakarta, 2004.
Polina, A.M, Diktat Kuliah Basis Data I Teknik informatika Universitas Sanata
Dharma, Yogyakarta, 2003.
Whitten, Bentley Dittman, System Analysis and Design Method 6th
Edition,
Irwin/McGraw-Hill, New York, 2004.
Purwanto, Yudhi, Pemrograman Web dengan PHP, Elex Media Komputindo, Jakarta,
2001.
Jogiyanto, Sistem Teknologi Informasi – Edisi III, Andi, Yogyakarta, 2005.
Alisalim, Tutorial Dream Weaver MX, http://www.ilmukomputer.com/alisalim-
dreamweaver.pdf, [14 September 2006].
Riyanto, Slamet, Teknik Membuat Web Profesional dengan Photoshop,
http://slametriyanto.web.id/riyanto-webprofesional.pdf, [14 September 2006].
Hakim Rachmad, Tip dan Trik Adobe Photoshop 7 (2002), Penerbit ElexMedia
Komputindo.
top related